Forms 如何使用GET方法更改URL表单?
表格:Forms 如何使用GET方法更改URL表单?,forms,url,methods,get,Forms,Url,Methods,Get,表格: 如何使用GET方法更改URL表单 之前:测试?cat3=1&cat3=5&cat3=8&cat3=18 之后:测试?cat3=1,5,8,18 我想使用jQuery 非常感谢 给你!本例使用jQuery,将在提问时获取表单元素,并对所需URL执行GET请求。您可能会注意到编码为“%2C”的逗号,但当您在服务器端读取数据时,这些逗号将自动解码 $(文档).ready(函数(){ $('#myForm')。提交(函数(){ //创建表单对象。如果表单中有其他参数,您可以选择在此处序列化
如何使用GET方法更改URL表单
之前:测试?cat3=1&cat3=5&cat3=8&cat3=18
之后:测试?cat3=1,5,8,18
我想使用jQuery
非常感谢 给你!本例使用jQuery,将在提问时获取表单元素,并对所需URL执行GET请求。您可能会注意到编码为“%2C”的逗号,但当您在服务器端读取数据时,这些逗号将自动解码
$(文档).ready(函数(){
$('#myForm')。提交(函数(){
//创建表单对象。如果表单中有其他参数,您可以选择在此处序列化整个表单
变量参数={
“cat3”:”
};
//循环检查名为cat3的选中项并添加到参数字符串中
$(this).children('input[name=cat3]:checked')。每个(函数(i,obj){
如果(i>0)参数cat3+=',';
params.cat3+=$(obj.val();
});
//通过进入格式正确的GET url“提交”我们的表单
var url=$(this.attr('action')+'?'+$.param(params);
//您可以删除的示例警报
警报(“此表单现在将获得URL:+URL”);
//执行提交
window.location.href=url;
});
});代码>
我的朋友找到了一个解决方案:
$(文档).ready(函数(){
//更改Url格式:&cat3=0&cat3=1&cat3=2->&cat3=0,1,2
var changeUrlForm=函数(catName){
$('form')。在('submit',function()上{
var myForm=$(这是);
var checkbox=myForm.find(“输入[type=checkbox][name=“+catName+”]”);
var-catValue='';
复选框。每个(函数(索引、元素){
var name=element.name;
var值=元素值;
如果(元素已选中){
如果(catValue==''){
catValue+=值;
}否则{
catValue+='‚'+值;
}
element.disabled=true;
}
});
如果(catValue!=''){
myForm.append(“”);
}
});
};
//按“回车”键
$('.search form.inputbox search').keypress(函数(e){
如果(e.which==13){
变更形式(“cat3”);
变更格式(“cat4”);
警报(window.location.href);
}
});
//点击提交按钮
$('.search form.btn submit')。在('click',function()上{
变更形式(“cat3”);
变更格式(“cat4”);
警报(window.location.href);
$(“.search form”).submit();
});
});代码>
1.
3.
5.
7.
2.
4.
6.
这需要JavaScript。您可以使用jQuery吗(这样会更容易)?哦,对不起,我不清楚。我想使用jquery。您应该重新标记问题以包含jquery:)非常感谢@Scott'scm6079'
<form action="/test" method="GET">
<input name="cat3" value="1" type="checkbox">
<input name="cat3" value="5" type="checkbox">
<input name="cat3" value="8" type="checkbox">
<input name="cat3" value="18" type="checkbox">
<input type="submit" value="SUBMIT">
</form>