我有五个下拉列表和五个texbox,我正在检查点击任何下拉列表相应的texbox应该通过javascript使用asp.net中的母版页启用/禁用
例如:如果选择dropdownlist1
,那么texbox1
应该启用,对于一个文本框,它的工作方式如何使其适用于五个文本框
function HideTextBox(ddlId) {
var ControlName = document.getElementById(ddlId.id);
if (ControlName.value == 0)
{
document.getElementById('<%=txtComment1.ClientID%>').disabled = true;
}
else {
document.getElementById('<%=txtComment1.ClientID%>').disabled = false;
}
}
答案 0 :(得分:0)
你可以使用JQuery,这是更好的方法。为每个textBox设置两个类,首先是.textBox1 .myTexts, 第一个类必须包含文本框的ID。如.textBox1,.textBox2等。您的保管箱值必须只包含文本框的ID。
$(document).ready(function(){
$("#dropBoxID").change(function(){
$(".myTexts").attr('disabled','disabled');
$(".textBox"+$(this).val()).removeAttr("disabled")
});
});
答案 1 :(得分:0)
试试这个 http://jsfiddle.net/3WJtM/
function HideTextBox(ddlId) {
var ControlName = document.getElementById(ddlId.getAttribute("id"));
var idTxt = ControlName.getAttribute("txt");
if (ControlName.value == 0)
{
document.getElementById(idTxt).disabled = true;
}
else {
document.getElementById(idTxt).disabled = false;
}
}
在每个对象上选择,添加一个名为te输入文本的属性txt 在javascript中,您搜索此文本框以启用或禁用
例如
<select id="ddl1" txt="txt1" onchange="HideTextBox(this);" >
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>
</select>
<input type="input" id="txt1" disabled/>