Let’s say I want to create a search form & using chosen jQuery multiple select
I’ll use $_GET to keep the query for pagination. Example my select form
<select name="q[]" data-placeholder="Please Select" multiple>
<optgroup label="Choose a Location">
<option value="l_1">Location A</option>
<option value="l_2">Location A</option>
</optgroup>
<optgroup label="Choose a Type">
<option value="t_1">Type A</option>
<option value="t_2">Type B</option>
</optgroup>
<optgroup label="Choose a Room">
<option value="r_1">Room A</option>
<option value="r_2">Room B</option>
</optgroup>
</select>
The URL query http:/domain.com/search/?q[]=l_1&q[]=t_1&q[]=t_2&q[]=r_1&q[]=r_2
There have a another option how should the URL will looks like?
No. The generated URL will be field_name=value, and that will be duplicated for each value.
This is how forms work. Browsers know how to generate them. Server side form data parsers know how to process them.
URLs are tools. They don’t need to be works of art. Especially when they are being generated from user input.