多くのフィルターを使用する検索機能を構築しています。postの代わりにgetメソッドを使用することにしました(さまざまな理由)。問題は、多くのフィルターを使用すると、クエリ文字列が非常に長くなることです。特に、同じ名前のフィルターを使用すると、次のようになります。
myurl.com?filter1[]=val1&filter1[]=val2&filter2=val
より良い制御を得て、0の値を防ぐために、私はserializeArrayを試しました:
var array = {};
jQuery.each(jQuery('form').serializeArray(), function(index,val) {
if (val.value != 0 )
array[value.name] = val.value;
});
ただし、この方法では、最初のfilter1をfilter1の最後の値でオーバーライドするため、複数の値は機能しません。そして、クエリ文字列を作成するための「問題」があります。私はJavaScriptの教授ではありません。だから私はここで少し助けが必要です。
何ができるので、次のようなクエリ文字列を取得します。
myurl.com?filter1=val1|val2&filter2=val and so on
HTMLは「通常の」入力フィールドです
<input type="checkbox" name="filter1[]" />
<input type="text" name="filter2" />
前もって感謝します
ルーヴェン