2013-02-19 33 views
0

我想在所選值改變時提交表單,並添加查詢字符串參數。它只能提交,但參數丟失。例如,提交的時候,我想的形式SUMIT到這個網址:通過JQuery提交表單後缺少查詢字符串參數

http://www.a.com/myblog?year=2012

但以下鏈接實際上是提交的,以參數丟失:

http://www.a.com/myblog

它的工作原理,如果我更改爲提交給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

表單使用GET,這可能覆蓋任何 「使用說明書」 查詢字符串參數。你有沒有機會找POST? – bfavaretto 2013-02-19 18:41:23

回答

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> 
+0

謝謝!有用。我想知道你是否知道我爲什麼不工作。 – Pingpong 2013-02-19 21:14:19

+0

恐怕我也有點難過。 – 2013-02-20 10:17:46

相關問題