2016-07-04 5 views
0

を開くことができるようにaction属性に渡すように選択オプションの値を取得するが、それはウェブサイトのページを開いていない....それは、URLとして渡すとURLのWebサイトがアドレスに表示されているウェブサイト

<form action=" "> 
<select name="url"> 
<option value="https://www.google.com">google</option> 
<option value="https://www.yahoo.com">yahoo</option> 
</select> 
<input type="submit"/> 
</form> 

<script> 
function SetData(){ 
var select = document.getElementById('url').value; 
var test_id = select.options[select.selectedIndex].value; 
document.form.action = test_id; 
form.submit(); 
    } 
</script> 
+1

'document.form.action'はあなたが思うものを参照していません。あなたの関数が実行された場合、実際にはエラーが発生します。あなたのフォームに 'id'を渡し、' document.getElementById'を使って参照を取得してください。また、関数を実行するために 'submit'リスナーをフォームに添付する必要があります。 – Teemu

答えて

0

これを見てください...選択されたWebページを開く送信ボタンのクリックハンドルです。

HTML:

<select id="url"> 
    <option value="https://www.google.com">Google</option> 
    <option value="https://www.yahoo.com">Yahoo</option> 
</select> 
<button type="button" onclick="openUrl()">Open</button> 

Javascriptを:私は、ボタンページ上のクリックは、選択した値のようリダイレクトされたときに、いくつかのスクリプト を変更しているとも掲載されている属性

function openUrl(){ 
    var select = document.getElementById("url"); 
    var url = select.options[select.selectedIndex].value; 
    window.open(url,'_blank'); 
} 
ここ

https://jsfiddle.net/kamys76g/

+0

しかし、それはどのようにアクション属性を通過するのですか?目的は、私がウェブサイトを選択して値を渡すことができるフォームを持つことです。私のプロジェクトでは、Webサイトを選択し、そのページにアクセスするためのユーザー名とパスワードを追加する選択タグを持つことによって、Webサイトをテストします。目標は、テスト用Webサイトのリストを1つのhtmlにまとめ、複数のhtmlにまとめることです。 –

+0

さらに、これにはpostメソッドが含まれているので、PHPも含まれています。私の唯一の懸念は、action属性を調べるためのオプション値を得ることです。 –

+0

アクション属性に値を設定したい場合は(上のTeemusのコメントを参照してください)、 https://jsfiddle.net/kamys76g/1/ – mxlse

0

照会で

<script> 
    function SetData(){ 
    var select = document.getElementsByName('url')[0].value; 
    document.forms[0].action = select; 
    document.forms[0].submit(); 
    } 
    </script> 

<form action=" "> 
<select name="url"> 
<option value="https://www.google.com">google</option> 
<option value="https://www.yahoo.com">yahoo</option> 
</select> 
<input type="submit" value="submit" onclick="SetData()"/> 
</form> 
+0

ありがとう、Sanjay –

関連する問題