如何将两个下拉列表的多个选定值发送到ajax服务器?

时间:2013-10-15 17:18:03

标签: javascript ajax jquery

我想知道如何从jquery向ajax发送多个值。 例如我有两个下拉列表即会话(包含季风,冬季) 年(包含2010年,2011年,2012年,2013年等)。我想从jquery中将这些下拉列表中的两个选定值发送到ajax。所以请提出一些想法。

我试图将单个值作为休耕发送。

      <body>
  <form name="frm2" method="POST">
      <table align="center" border="1">

         <tr>
            <td class="style30">

            <select  id="stream" name="current_session" >
                <option value="Winter" > Winter </option>
                <option value="Monsoon">Monsoon</option>
            </select></td>
            <td>
                <select name="year2" id="year1" style="width:200px;" >
                    <option value="2015" > 2015 </option>
                <option value="2014">2014</option>
                    <option value="2013" > 2013 </option>
                <option value="2012">2012</option>
                    <option value="2011" > 2011 </option>
                <option value="2010">2010</option>
                    </select>
            </td>              
   </tr>      
   </table>                
   </form>





      <script>
     $( "#year1" ).change(function() {
     var selectedVal=$("#year1 option:selected").val();
     $.ajax({
             url:"checkonserver.jsp?given_year="+selectedVal,
       // here i sent only one selected value, 
        //but i want selected values both **sesion, year to be sent to ajax at time**.


      }
      });
      });

我的ajax是休闲的(checkonserver.jsp)

 <head>


    <title>JSP Page</title>
</head>
<body>
<%=request.getParameter("given_year")%>


</body>

2 个答案:

答案 0 :(得分:1)

在AJAX调用的data属性中将数据作为键/值对发送:

$.ajax({
     url:"checkonserver.jsp",
     data: {selectedYear : yearVariable, anotherVar : someVariable}

您现在可以在后端访问这些内容,将其分配到selectedYearanotherVar

答案 1 :(得分:0)

你也可以这样做:

 $( "#year1" ).change(function() {
     var year=$("#year1").val();
     var stream=$("#stream").val();
     $.ajax({
          url:"checkonserver.jsp",
          data: {selectedYear : year, stream: stream},
          error: function(){
               alert("fail!")
          },
          success: function(data){
             //data contains everything send from the server
             alert("ok")
          }

      });
  });