我想在所选值发生变化时提交表单,并添加查询字符串参数。它只能提交,但参数丢失。例如,提交时,我想将表单提交到此URL:
http://www.example.com/myblog?year=2012
但下面的网址实际上是提交的,参数丢失了:
如果我改为提交给google.com,则会有效。
有什么想法吗?
<script type="text/javascript">
$(document).ready(function () {
$('#newsArchiveDropDown').change(function () {
var selectValue = $(this).val();
var form = $('#newsArchiveForm');
form.attr('action', form.attr('action') + '?year=' + selectValue);
form.submit();
});
});
</script>
<form id="newsArchiveForm" method="GET" action="http://www.a.com/myblog" novalidate="novalidate">
<select id="newsArchiveDropDown" name="">
<option value="2012" class="">2012</option>
<option value="2011" class="">2011</option>
</select>
</form>
答案 0 :(得分:0)
只需在select元素上将name
属性设置为“year”即可生成预期结果。 jQuery变得更加简单。
$(document).ready(function () {
$('#newsArchiveDropDown').change(function () {
$('#newsArchiveForm').submit();
});
});
<form id="newsArchiveForm" method="GET" action="http://www.a.com/myblog" novalidate="novalidate">
<select id="newsArchiveDropDown" name="year">
<option value="2012" class="">2012</option>
<option value="2011" class="">2011</option>
</select>
</form>
答案 1 :(得分:0)
如果没有选择任何选项,就会出现问题。确保在继续之前先选择一个选项。