在提交之前从输入设置变量值

时间:2012-01-18 06:06:52

标签: javascript forms variables option

首先,我在表单中输入了这个。

<select id="entry_14">
     <option value="Woman">Woman</option>
     <option value="Man">Man</option>
</select>

然后我宣布了这个变量。

var mygender = document.getElementById('entry_14').value;

但是,当我document.write时,它已经在用户做出选择之前显示“Man”,并且在选择了女人之后,它仍然显示了男人。

每次用户选择其中一个选项时,如何设置此变量的值?

4 个答案:

答案 0 :(得分:5)

它会立即执行,因为您的代码不在函数中。当选择更改时,您需要调用此函数。向onchange添加select.处理程序在此示例中,我将this.value这是您的选择列表值传递给函数。最后,你可以用这个价值做任何你想做的事。

<select id="entry_14" onchange="myfunction(this.value);">
    <option value="Woman">Woman</option> 
    <option  value="Man">Man</option>
</select>

<script>
    function myfunction(val) {
        document.write(val);
    }
</script>

答案 1 :(得分:3)

声明onchange event handler

document.getElementById('entry_14').onchange = function(){
var mygender =  this.value;
document.write(mygender);
}

答案 2 :(得分:0)

将onChange JS处理程序添加到&lt; select&gt;元件。下面的示例显示了这样做的内联方式......

<select id="entry_14" onChange="updateMyGender();">
    ....
</select>

<script>
    var mygender = document.getElementById('entry_14').value;
    function updateMyGender()
    {
        mygender = document.getElementById('entry_14').value;
    }
</script>

答案 3 :(得分:0)

我认为你正在寻找这个

var mygender= document.getElementById('entry_14');
var gender= mygender.options[mygender.selectedIndex].value;// for value 

var gender= mygender.options[mygender.selectedIndex].Text;//for text