Javascript 如何知道表单中的值(如果该值是所需的,则显示某些内容)
我有以下HTML代码:Javascript 如何知道表单中的值(如果该值是所需的,则显示某些内容),javascript,html,Javascript,Html,我有以下HTML代码: <form> <select name="city" id="city"> <option class="orase" value="0">Choose City</option> <option class="orase" value="1">Berlin</option> <option class="orase" value="2">Prague</
<form>
<select name="city" id="city">
<option class="orase" value="0">Choose City</option>
<option class="orase" value="1">Berlin</option>
<option class="orase" value="2">Prague</option>
<option class="orase" value="3">London</option>
<input type="submit" name="srch1" id="srch1" value="Display"/>
</select>
</form>
我建议您使用jQuery,它可以:
$("#city").change(function (e) {
e.preventDefault;
var city = $("#city option:selected").text();
if ( city == "Berlin" ) {
alert("You are in Berlin");
}
});
演示:
选择城市
柏林
布拉格
伦敦
var a=document.getElementById(“城市”);
a、 onchange=函数(e){
var指数=a.选择指数;
警报(“您在”+a[index].innerHTML中);
};
修改您的输入:
<input type="submit" onClick="displaySomething()" value="Display"/>
选择城市
柏林
布拉格
伦敦
函数f1()
{
if(document.getElementById(“city”).value==1)//值1表示柏林
{
警惕(“在此块中执行操作”);
}
}
选择城市
柏林
布拉格
伦敦
瓦尔市;
函数eval(){
城市=document.getElementById(“城市”).value;
警报(城市);
如果(城市==“1”){
警惕(“你在柏林”);
}
}
这里有几件事需要注意,我使用document.getElementById(“city”),因为当您单击submit时,保存值的是您的select对象。此外,我还添加了一个功能,该功能在单击submit后执行。你要确保在那之后你抓住了城市的价值;不要像你拥有的那样在JS加载时获取它的值(此时应该是未定义的)。试试以下方法:
HTML:
一些变化:
- 使用
代替按钮
,以防止立即提交和 重新加载页面。还将其从输入
选择中拉出
使用city
,getElementById()
返回一个HTMLCollection,它是一个类似数组的对象,包含 具有给定类名的所有元素getElementsByClassName()
- 当你把一个函数赋给一个变量时,它不会被提升,因此
将函数移到引用它的表达式上方。或者
您可以删除
并声明函数:var
函数getCity(){…}
- 选中
元素的select
,value
将只包含innerHTML
元素的HTML选项
隐式打开一个新文档,所有 旧版本的内容不见了。改为使用简单的document.write()
innerHTML
- 使用了
而不是addEventListener()
。后者attachEvent()
只适用于IE我会使用简单易用的Jquery方式。 让我们为您的表单提供一个id
,然后使用以下命令 jquery代码-$("#myForm").submit(function(e){ selected = $("#city option:selected").text(); if(selected == "Berlin"){ alert("your city is Berlin"); } e.preventDefault(); });
这样,它将仅在提交后触发if语句,而不是在选择更改上。put然后页面将提交,页面将刷新。。。您确定要使用
按钮吗?此外,onsubmit是表单的事件,而不是按钮。现在重要的是哪种类型有输入。如果此类型为“按钮”,则“按钮”正常。submit
<input type="submit" onClick="displaySomething()" value="Display"/>
function displaySomething() { if(document.getElementById("city").options[document.getElementById("city").selectedIndex].value==1) { //Berlin selected! } }
<form> <select name="city" id="city"> <option class="orase" value="0">Choose City</option> <option class="orase" value="1">Berlin</option> <option class="orase" value="2">Prague</option> <option class="orase" value="3">London</option> <input type="button" name="srch1" id="srch1" value="Display" onclick="f1();" /> </select> </form> function f1() { if ( document.getElementById("city").value == 1) // value 1 is for Berlin { alert("do something in this block"); } }
<select name="city" id="city"> <option class="orase" value="0">Choose City</option> <option class="orase" value="1">Berlin</option> <option class="orase" value="2">Prague</option> <option class="orase" value="3">London</option> <input type="submit" name="srch1" id="srch1" value="Display" onclick="eval()" /> </select> <script> var city; function eval() { city = document.getElementById("city").value; alert(city); if (city == "1") { alert('you are in Berlin'); } } </script>
<form> <select name="city" id="city"> <option class="orase" value="0">Choose City</option> <option class="orase" value="1">Berlin</option> <option class="orase" value="2">Prague</option> <option class="orase" value="3">London</option> </select> <button type="button" name="srch1" id="srch1">Display</button> </form>
var city = document.getElementById("city"); var button = document.getElementById("srch1"); var getCity = function () { if (city.value === "1") { document.body.innerHTML += "You are in Berlin"; } }; button.addEventListener("click", getCity);
$("#myForm").submit(function(e){ selected = $("#city option:selected").text(); if(selected == "Berlin"){ alert("your city is Berlin"); } e.preventDefault(); });