Javascript select onchange 提交表单

Javascript select onchange submit form

这是我的网站(wordpress 网站): http://orbix.hedgehogworks.net/?page_id=924

我在文本 "Filter By Location:" 旁边有一个表格。我想在选中其中一个选项时提交表单 (onChange)。

我试过这个:

<script type='text/javascript'>
 $('#oflocations').change(function()
 {
     $('.searchandfilter').submit();
 });
</script>

还有这个:

<script type='text/javascript'>
$('#oflocations').change(
    function(){
         $(this).closest('form').trigger('submit');
    });
</script>

但是 none 这些方式有效。

您需要确保 DOM 已准备好附加事件、操作等。

这就是 $(document).ready() 功能的原因(阅读更多内容 here)。在您尝试 change/select/attach 之前确保所有内容(相关的,而不是图像或广告横幅)都已准备就绪事件:

<script type='text/javascript'>
 $(document).ready(function () {
     $('#oflocations').on('change', function()
     {
         $('.searchandfilter').submit();
     });
 });
</script>

编辑:从.change更改为.on('change', ..

编辑 2:根据 $(document)undefined 错误,您似乎没有正确加载 JQuery。确保它已加载到您的页面中。

$(document).ready(function ()中执行因为DOM应该先准备好。

 $(document).ready(function () {
     $('#oflocations').change(function()
     {
         $('.searchandfilter').submit();
     });
 });

DOM必须先准备好触发事件:

$(document).ready(function () {
     $('#oflocations').change(function()
     {
         $('.searchandfilter').submit();
     });
 });