2016-03-22 6 views
2

私は本当にコーディングするのが本当に新しいので、私の質問です。 JSPとJavascriptを使用して別のページにリダイレクトするにはどうすればよいですか?またはサーブレット?私はサーブレットのことを理解していないので、私はJavascriptを使用しています。オプションのいずれかを選択して「送信」をクリックすると、何も起こりません。ドロップダウンからのリダイレクト

ここに私のコードです:

JSP:

<form> 
    <select id="module_id" name="module_id" /> 
     <option value="0" selected /></option> 
     <option value="1" /> CD101 </option> 
     <option value="2" /> CD102 </option> 
     <option value="3" /> CD103 </option> 
     <option value="4" /> CD104 </option> 
     <option value="5" /> CD105 </option> 
     <input type="button" value="Submit" onclick ="myChoice();" /> 
    </select> 
</form> 

Javascriptを:(グーグル-d)を

<script type="text/javascript"> 
function myChoice(){ 
    var s = document.getElementById("module_id"); 
    var module_id = s.selectedIndex.value; 

    if (module_id === 1) 
     window.location = "response.jsp"; 
    if (module_id === 2) 
     window.location = "http://www.google.com"; 
} 
</script> 

答えて

1

function myChoice(){ 
 
    var s = document.getElementById("module_id"); 
 
    var module_id = s.value; 
 
    console.log(module_id); 
 
    if (module_id === "1") 
 
     alert("ok"); 
 
    if (module_id === 1) 
 
     alert("not ok"); 
 
}
<form> 
 
    <select id="module_id" name="module_id" /> 
 
     <option value="0" selected /></option> 
 
     <option value="1" /> CD101 </option> 
 
     <option value="2" /> CD102 </option> 
 
     <option value="3" /> CD103 </option> 
 
     <option value="4" /> CD104 </option> 
 
     <option value="5" /> CD105 </option> 
 
     <input type="button" value="Submit" onclick ="myChoice();" /> 
 
    </select> 
 
</form>

REPLはあなたのコードからこれをエース:

function myChoice(){ 
     var s = document.getElementById("module_id"); 
     var module_id = s.value;//changed 

     if (module_id === "1")//changed 
      window.location.href = "response.jsp"; 
     if (module_id === "2")//changed 
      window.location.href = "http://www.google.com"; 
    } 

説明:それはリダイレクトが起こっていなかった理由ですので

あなたはstring型の値を取得しているとあなたがintと比較して、===オペレータは値だけでなく、種類を比較します。

詳細については、このすばらしい回答https://stackoverflow.com/a/359509/3143384をお読みください。

およびselectedIndexのjavascriptは、オブジェクト参照ではなく選択されたオプションのインデックスを返します。したがって、ユーザにはoptionまたはvalueを指定する必要があります。より多くのためには、this を読み、 this example

+1

私はそれを逃す可能性がどのようにOHMYGOD ..とs.valueを試すことができます。ありがとうございます!!!!! –

+0

'window.location.href = ...'を使うと、単に 'window.location = ...'が動作しないブラウザがあります。 –

+0

編集ありがとう.. –

関連する問題