Javascript 在下拉选择中显示文本框
我试过做onchange和onclick事件,但两者都有问题。在执行代码时,Firebug告诉我没有定义showTextBox函数 当为状态下拉列表选择值1时,我需要显示包含文本框的Javascript 在下拉选择中显示文本框,javascript,html,drop-down-menu,onclick,onchange,Javascript,Html,Drop Down Menu,Onclick,Onchange,我试过做onchange和onclick事件,但两者都有问题。在执行代码时,Firebug告诉我没有定义showTextBox函数 当为状态下拉列表选择值1时,我需要显示包含文本框的。我在选项标记中移动了onclick属性,并尝试了onchange属性,但仍然没有在Firebug中定义get showTextBox() <select id="AddrType" onclick="showTextBox();" height="30px" style="width: 90p
。我在选项标记中移动了onclick属性,并尝试了onchange属性,但仍然没有在Firebug中定义get showTextBox()
<select id="AddrType" onclick="showTextBox();"
height="30px" style="width: 90px">
<option value="10"></option>
<option value="0">City</option>
<option value="1">State</option>
<option value="2">Zip</option>
</select>
<br />
<div id="stateText" style="visibility: hidden">
State <input type="text" id="STATE"/>
</div>
有什么帮助吗。我已经在谷歌上搜索过了,但似乎找不到有效的东西。我无法使用document.getElementById()
函数。您的val()
可能返回的是“1”
,而不是您正在检查的“State”
不仅在jQuery上,而且当您将表单数据发布到服务器时,AddrType
的值将是所选选项的value
属性(“在您的情况下,City/State/Zip”只是值的“标题”)。尝试以下操作:
<script type='text/javascript'>
$(document).ready(function(){
$('#AddrType').change(function(){
if ($(this).val() == '1') {
$('#stateText').css({'display':'block'});
}
});
});
</script>
是的,我理解,但出于某种原因,Firebug告诉我函数未定义。在Firebug中调用该函数时,选择onclick=“showTextBox();”,表示未定义showTextBox。可能是函数定义上方的代码中存在语法错误,导致FireFox无法解析您的函数。尝试在FireBug控制台中输入showTextBox
,查看是否定义了它。此on change中没有onclick或onchange事件,它会提醒值是多少。?是的..因为运行时下拉列表的m binding change事件。我已经更新了我的答案。它正是你在代码中试图做的。这是GetSign closer,因为它在change函数中。我得到的样式是未定义的错误。style=“visibility:hidden”在div上有效吗?哦,天哪,jquery对象没有这样的“样式”。我已经更新了我的答案。由于某些原因,现在查看它。它不喜欢onchange属性。它告诉我函数未定义,但它清楚地显示在我的文档中。就绪。我使用你的第一个建议,但是使用.css({'visibility':'visible'});谢谢你的帮助!我想你的代码中有一个showTextBox的结尾}?
<script type='text/javascript'>
$(document).ready(function(){
$('#AddrType').change(function(){
if ($(this).val() == '1') {
$('#stateText').css({'display':'block'});
}
});
});
</script>
<select id="AddrType" height="30px" style="width: 90px">
<option value="10"></option>
<option value="0">City</option>
<option value="1">State</option>
<option value="2">Zip</option>
</select>
<select id="AddrType" onchange="showTextBox()" height="30px" style="width: 90px">
<option value="10"></option>
<option value="0">City</option>
<option value="1">State</option>
<option value="2">Zip</option>
</select>
function showTextBox(){
if ($('#AddrType').val() == '1') {
$('#stateText').css({'visibility':'visible'});
}