我有一个多选<asp:listbox>
和一个按钮。我想禁用该按钮,除非选择了列表框中的&gt; = 1项。我怎么能这样做客户端?我找不到某种OnSelect
回调,只有OnSelectedIndexChanged
来自谷歌搜索似乎很难用于此行为,可能是不可能的。
答案 0 :(得分:2)
使用OnChange事件,并计算所选项目:
<script>function enableButton(opt) {
var selected = new Array();
var count = 0;
for (var intLoop=0; intLoop < opt.length; intLoop++) {
if (opt[intLoop].selected) {
count++;
}
}
if (count >= 1)
{
// disable button
}
}
</script>
<select id="list" style="font-size: 11px;"
onChange="enableButton(this.options);" MULTIPLE SIZE="5">
<option value="0">Select...</option>
<option value="1">1</option>
<option value="2">2</option>
</select>
编辑: ASP:将ListBox呈现为HTML,如上面的代码所示。所以你需要做的就是在onchange属性中添加脚本:
myListBox.Attributes.Add("onchange", "enableButton(this.options);");
答案 1 :(得分:2)
使用jQuery不会那么难。一些东西 -
$("select#myListBox").change(function() {
if ($("select#myListBox option:selected").length >= 1)
$("input#myButton").attr("disabled", "true");
}
所有人都欢呼强大的jQuery。
答案 2 :(得分:1)
选择框的OnClick或OnChange与“OnSelect”相同。