如何通过单个 select 更改多个表单元素
How to change multiple form elements via single select
如果选择了第二个 select 选项,我完全不知道如何将开始标记更改为 'method=post'。我正在为表单操作使用 Onchange,但也不知道如何更改 post 方法。
我最近的尝试是使用 IF 语句,如下面的代码所示,但同样,只有 1 个选项有效。
if(this.value){
$content .='<form action="/gsresults">';
}
else{
$content .='<form action="/imagesearch?go" method="post">';
}
$content .='<input type="text" name="q"/>
<input type="hidden" name="cx" value="partner-pub-xxxxxxxxxxx" />
<input type="hidden" name="cof" value="FORID:11" />
<input type="hidden" name="ie" value="UTF-8" />
<select onchange="this.form.action=this.value">
<option value="/gsresults" selected="selected">Google</option>
<option value="/imagesearch?go">Images</option>
</select>
<input type="submit" name="sa"/>
</form>';
感谢任何help/pointers。
克里斯
您可以使用 jQuery 来侦听事件并编辑表单的属性:
$("select").change(function() {
$("form").attr("method","post");
});
我建议在您的 <form>
和 <select>
中添加一个 id
,这样您的听众就不会感到困惑。
如果选择了第二个 select 选项,我完全不知道如何将开始标记更改为 'method=post'。我正在为表单操作使用 Onchange,但也不知道如何更改 post 方法。 我最近的尝试是使用 IF 语句,如下面的代码所示,但同样,只有 1 个选项有效。
if(this.value){
$content .='<form action="/gsresults">';
}
else{
$content .='<form action="/imagesearch?go" method="post">';
}
$content .='<input type="text" name="q"/>
<input type="hidden" name="cx" value="partner-pub-xxxxxxxxxxx" />
<input type="hidden" name="cof" value="FORID:11" />
<input type="hidden" name="ie" value="UTF-8" />
<select onchange="this.form.action=this.value">
<option value="/gsresults" selected="selected">Google</option>
<option value="/imagesearch?go">Images</option>
</select>
<input type="submit" name="sa"/>
</form>';
感谢任何help/pointers。
克里斯
您可以使用 jQuery 来侦听事件并编辑表单的属性:
$("select").change(function() {
$("form").attr("method","post");
});
我建议在您的 <form>
和 <select>
中添加一个 id
,这样您的听众就不会感到困惑。