0

私はajaxが初めてです。サーブレットへの選択ボックスのパラメーター値を使用して、サーブレットにリダイレクトしたいと考えています。これは私のコードであり、 request.getParameter("type") を使用すると値が取得されないため、null が返されます。

     <script>
       $(document).ready(function() {       
         $('#type').change(function() {                              
           $.get('pickasset', function(responseJson) {
             var type = $('#type').val();
            $.ajax({
                type:'POST',
                url: 'PickAssetServlet',
                data: type          
            }); 
           });
        });
      });
    </script>

    <form action="pickasset" method="post">
        <select id="type" name="type">
           <option value="Non-Sap">Non Sap</option>
           <option value="Sap">Sap</option>
        </select>
    </form>

選択ボックスを変更すると、サーブレットに移動してそこでロジックを実行する必要があります。

4

3 に答える 3

0

jQueryドキュメント( http://api.jquery.com/val/ )に記載されているように、チェックボックスの値は正しい方法でチェックボックスから取得する必要があります。複数の選択に注意してください。値の配列が得られます。ドキュメントによると、あなたはそれを正しくやっています。

var varValue = var type = $('#type').val();

次に、データを「json」として送信すると、 request.getParameter('type') で読み取ることができます

data: { "type" : varValue }

それでもnullになる場合は、「タイプ」パラメータとその値がリクエストに含まれているかどうかを確認してください(クロムリクエストインスペクターが便利で、デバッガーで確認してください)。

.

PS

リクエストをラップしたり、一部のパラメーターを非表示にしたりする可能性のあるものが webapp フィルターチェーンにあるかどうかを確認してください。一部の大規模な web-app では、非常に簡単に迷子になります。

于 2013-07-10T16:42:53.567 に答える