我使用的是PHP,Yii。我有三个标签tab1 tab2 tab3
。
在每个选项卡中,我都有一个名称为的下拉字段,其中键入,并根据选项卡提供不同的下拉选项。
当我选择第一个选项卡时,其他两个选项卡的类型字段将被隐藏。在其他选项卡中也是如此。
问题是,当我按下搜索按钮时,所有三个选定的类型值都显示在GET方法中,如?search[type]=130&search[type]=111&search[type]=111
,这会导致错误的搜索结果。
我不需要将隐藏字段值传递给GET方法操作。我并不是要求代码来做到这一点。是否可以不传递隐藏字段值?如果是,请引导我。
HTML表单提交会将所有字段传递给请求的操作。
我能看到如何做到这一点的唯一方法是使用JavaScript和HTML的组合。
考虑这两个字段。
<input type='text id='field1' name='field1' value="">
<input type='text id='field2' value="">
只有字段1将通过普通表单提交按钮。
如果需要传递field2,可以使用JavaScript设置要发送到服务器的值。使用JQuery,您会看到以下内容:
$.ajax({
type: 'POST',
url: 'http://place.your.url.here.com',
data: {
'field1': $("#field1").val(),
'field2': $("#field2").val(),
},
success: function(data){
alert(msg);
}
});
因此,剩下的就是创建另一个隐藏字段,指示您所在的选项卡,单击时设置的选项卡。然后,在发送表单时,创建需要发送的POST值。