2

I have a link opening the listview AllItems.aspx with specific filter parameter in the url which works fine. But if the user tries to change the filter of the prefiltered column, e.g. by selecting "Include Descendants" or "Clear Filters from [ColumnName]" I get a strange behavior in Internet Explorer.

While it works in Firefox and the url parameters get changed, in Internet Explorer a set of (strange encoded) parameters will be added after the initial url paramters. The added paramters beginning with #InplviewHash will not be processed by the borwser and for the user nothing changes.

Example

Firefox

Initial URL:

/Lists/Articles/AllItems.aspx?FilterField1=Topics&FilterValue1=232&FilterOp1=In&FilterLookupId1=1&FilterData1=0%2C10da0eac-592c-4025-adf6-809c14811432

After selecting "Include Descendants":

/Lists/Articles/AllItems.aspx?FilterField1=Topics&FilterValue1=232%2C86&FilterOp1=In&FilterLookupId1=1&FilterData1=1%2C10da0eac-592c-4025-adf6-809c14811432&View={07B3C7B1-6A96-4007-A165-EACED7E8C3AC}

Internet Explorer

Initial URL:

/Lists/Articles/AllItems.aspx?FilterField1=Topics&FilterValue1=232&FilterOp1=In&FilterLookupId1=1&FilterData1=0%2C10da0eac-592c-4025-adf6-809c14811432

After selecting "Include Descendants":

/Lists/Articles/AllItems.aspx?FilterField1=Topics&FilterValue1=232&FilterOp1=In&FilterLookupId1=1&FilterData1=0%2C10da0eac-592c-4025-adf6-809c14811432#InplviewHash07b3c7b1-6a96-4007-a165-eaced7e8c3ac=CascDelWarnMessage%3D1-FilterField1%3DTopics-FilterValue1%3D232-FilterLookupId1%3D1-FilterOp1%3DIn-FilterData1%3D0%2C10da0eac--592c--4025--adf6--809c14811432

Does anyone have experiences with this behavior and knows how to solve it. Seems like this happens only in Internet Explorer, but I didn't test it in Chrome.

Thanks for help!

3
+50

The new page added in layouts folder "inplview.aspx". When paging, sorting or filtering happens there is an AJAX call to the inplview.aspx and it returns a JSON based result set. That is the rows of the defined list view webpart. The "inplview.aspx" generates the "inplviewhash" tag and appends it with "#" in url.

  • Thanks! With your hint I could solve the problem. While Firefox simply makes a post request and the whole page is reloaded, IE uses the inplview.aspx. In my case, the filter parameter in the url after "?" always overwrote the filter parameter set by SharePoint after "#", so inplview.aspx always returned the same result. If I open the page with only # parameters in the url, changing filters works in both browser. – Fensterbank Sep 17 '14 at 10:54
2

After Ruslan Dayanov's hint I have now the answer for this case.

Predefined filter parameter in the url should not set as valid query string parameter like AllItems.aspx?FilterField1=Topics&... because they will not be replaced while filtering via AJAX and always have a higher priority than the filter parameter, which are set by SharePoint logic and appended with "#" in url.

While the parameter after "?" remain the same, inplview.aspx will always return a result based on these parameter and ignores other parameters after "#"

Solution:

Based on the given URL examples, the initial url shoud be:

/Lists/Articles/AllItems.aspx#InplviewHash07b3c7b1-6a96-4007-a165-eaced7e8c3ac=CascDelWarnMessage%3D1-FilterField1%3DTopics-FilterValue1%3D232-FilterOp1%3DIn-FilterLookupId1%3D1-FilterData1%3D0%2C10da0eac--592c--4025--adf6--809c14811432

1

This blog will explain the how inplview parameter works in SharePoint 2013 Custom List View Web Part Refresh

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.