Javascript 获取下拉菜单的值';并使用JS显示选项
一旦用户选择了他们想要的口味,我希望能够在网页上显示一条消息,其中包含他们在单击提交按钮后从下拉列表中做出的选择。以下是我到目前为止的情况:Javascript 获取下拉菜单的值';并使用JS显示选项,javascript,html,Javascript,Html,一旦用户选择了他们想要的口味,我希望能够在网页上显示一条消息,其中包含他们在单击提交按钮后从下拉列表中做出的选择。以下是我到目前为止的情况: <select name="flavour1" required> <option value="">Please select a Flavour!</option> <option value="apple">Apple</option> <option valu
<select name="flavour1" required>
<option value="">Please select a Flavour!</option>
<option value="apple">Apple</option>
<option value="strawberry">Strawberry</option>
<option value="lemon">lemon</option>
<option value="pear">Pear</option>
<option value="cola">Cola</option>
<option value="lime">Lime</option>
</select>
<select name="flavour2" required>
<option value="">Please select a Flavour!</option>
<option value="noflavour">No More Flavours!</option>
<option value="apple">Apple</option>
<option value="strawberry">Strawberry</option>
<option value="lemon">lemon</option>
<option value="pear">Pear</option>
<option value="cola">Cola</option>
<option value="lime">Lime</option>
</select>
<input type="submit" value="Get your Flavour!!" onclick="getFlavour()">
如果您使用的是
,则单击按钮时,您正在提交表单。您需要阻止提交。添加返回false代码>到函数的末尾…还有getElementById(“flavour1”).value
两次。第二个应该是“flavour2”
…并且您的select
元素没有ID,只有名称。因此,您需要添加一个ID来使用getElementById()
…进行选择,IE不喜欢
元素上的.value
属性,所以将每个选择元素存储在一个变量中,并执行var falvour1=sel1.options[sel1.selectedIndex]代码>这就是你说的cookie..好吧,我现在有消息了,但它说的是:祝贺你,这是你选择的口味:[object HTMLOptionElement],[object HTMLOptionElement]
function getFlavour(){
var flavour1 = getElementById("flavour1").value;
var flavour2 = getElementById("flavour1").value;
document.getElementById("postFlavour").innerHTML = "Congratulations, here are your chosen flavours: "+flavour1+", "+flavour2;
}
function getFlavour(){
var sel1 = getElementById("flavour1");
var sel2 = getElementById("flavour2");
var flavour1 = sel1.options[sel1.selectedIndex];
var flavour2 = sel2.options[sel2.selectedIndex];
document.getElementById("postFlavour").innerHTML = "Congratulation, here are your chosen flavours: "+flavour1+", "+flavour2;
return false;
}