我在页面上有以下 JScript
<script type="text/javascript">
function ProcessButtonDisable() {
var button = $find("<%=ProcessButton.ClientID %>");
button.disabled = true;
}
</script>
然后
<asp:Button ID="ProcessButton" Text="Process All" runat="server" OnClick="Process_Click" OnClientClick="ProcessButtonDisable()" />
运行页面并触发按钮时,我得到
Microsoft JScript 运行时错误:无法设置属性“已禁用”的值:对象为空或未定义
并且动态页面已将其转换为:
<script type="text/javascript">
function ProcessButtonDisable() {
var button = $find("ctl00_ctl00_BodyContentPlaceHolder_MainContentPlaceHolder_ProcessButton");
button.disabled = true;
}
</script>
<input type="submit" name="ctl00$ctl00$BodyContentPlaceHolder$MainContentPlaceHolder$ProcessButton" value="Process All" onclick="ProcessButtonDisable();" id="ctl00_ctl00_BodyContentPlaceHolder_MainContentPlaceHolder_ProcessButton" />
由于控件已明确定义,并且客户端 ID 似乎返回了正确的 ID,我不知道出了什么问题
有什么帮助吗?
ps 如果从代码中不清楚,这样做的目的是防止用户在初始点击后有时间重新加载页面之前点击并重新发送请求