注意:很可能这将是一个重复的问题,但因为我没有找到明确的答案,所以仍然提出了这个问题。
在ASP.NET中,我想为CheckBox的onclick事件添加一些JavaScript。我已经简化了情况,如下所示:
<asp:CheckBox ID="TestCheckBox" runat="server" onclick="alert('test');" Text="Test" />
生成的 HTML 如下所示:<input id="MainContainer_TestCheckBox" type="checkbox" name="ctl00$MainContainer$TestCheckBox" onclick="alert('test');" /><label for="MainContainer_TestCheckBox">Test</label>
让我特别烦恼的是,单引号'会自动转换为'''。如果我在标记中省略onclick并在Page_Load中分配它,则HTML中显示完全相同的结果。
protected void Page_Load(object sender, EventArgs e)
{
this.TestCheckBox.Attributes["onclick"] = "alert('test');";
}
有人知道发生了什么吗?或者如何修复/避免它?