0
<form id="check" action="." method="POST">
    <input id="act" type="hidden" name="action"/>
        <select id="blk">
            <option value="blk">Bulk Actions</option>
            <option value="tes">Active</option>
            <option>Inactive</option>
            <option>Delete</option>
        </select>
     <input type="submit" value="Submit" onclick="document.getElementById('act').value = 'document.getElementById('blk').selectedIndex.value'"/>
</form>

select タグで値を取得したいのですが、name アクションを値として入力すると、値アクションが変更されます。

4

2 に答える 2

1

2つの概念を混ぜ合わせました。

  • select要素には、現在の選択を反映するプロパティvalueがあります
document.getElementById('blk').value
  • 要素には、現在の選択範囲の位置を反映するselect値とプロパティを持つオプションのリストがあります。selectedIndex次のように使用します。
var sel = document.getElementById('blk');
if (sel.selectedIndex >= 0) // could be -1 as well
    return sel.options[sel.selectedIndex].value

しかし、あなたが実際に望んでいるように見えるのは

<form id="check" action="." method="POST">
    <select name="action">
         <option value="blk">Bulk Actions</option>
         <option value="tes">Active</option>
         <option>Inactive</option>
         <option>Delete</option>
    </select>
    <input type="submit" value="Submit" />
</form>

nameあなたはあなたのコントロールを忘れたselectので、価値は投稿されません。onsubmitこれを使用すると、ボタンの非表示の入力やクリックリスナー(フォームのリスナーでもあるはずです)は必要ありません。

于 2012-11-07T11:05:11.463 に答える
0
try this
<form id="check" action="." method="POST">
    <input id="act" type="hidden" name="action"/>
        <select id="blk" onchange="javascript:CallMe(this.value)">
            <option value="blk">Bulk Actions</option>
            <option value="tes">Active</option>
            <option>Inactive</option>
            <option>Delete</option>
        </select>
<input type="submit" value="Submit" onclick="document.getElementById('act').value = 'document.getElementById('blk').selectedIndex.value'"/>
</form>

<script>
function CallMe(String str)
{
alert(str+" : is the value selected , call the according action now");
}
</script>
于 2012-11-07T11:12:38.670 に答える