我在aspx页面中有一个html控件。
<input type="checkbox" name="Booking" id="chkBooking" class="css-checkbox" runat="server" /><label for="chkBooking" class="css-label">Booking</label>
我想在点击复选框时添加一个javascript事件,并在codebehind中执行该事件,就像我在网上找到的这个例子:
TextBox1.Attributes.Add("onkeyup", displayControlName +
".innerText=this.value.length;");
如何在后面的代码中调用该事件?
答案 0 :(得分:1)
不要理解这个问题。您可以设置AutoPostback =&#34; true&#34;在asp.net Checkbox上设置其onCheckedChanged事件。
<asp:CheckBox id="cb" OnCheckedChanged="cb_CheckedChanged" AutoPostBack="true" runat="server">
和,在
背后的代码中protected void cb_CheckedChanged(object sender, EventArgs e)
{
//do whatever you want
}
警告,如果你愿意,你可以连接一个javascript事件点击一个按钮 - 但是为什么当它已经能够进行回发时呢?
<input type="checkbox" onclick="submitit()">
<asp:Button ID="btn" runat="server" OnClick="btn_Click" Height="0" Width="0" CssClass="hidden" />
<script type="text/javascript">
function submitit()
{
document.getElementById('btn').click();
}
然后,当单击该复选框时,javascript函数单击该按钮,页面回发和btn_Click运行。
protected void btn_Click(object sender, EventArgs e)
{
//do whatever you want
}
答案 1 :(得分:0)
您可以在已检查的事件上添加javascript
if(chkBooking.Checked)
{
String scriptText = String.Empty;
scriptText += "function ShowAlert(){";
scriptText += " alert( " +
" document.forms[0].TextBox1.value";
scriptText += ")}";
ClientScript.RegisterClientScriptBlock(this.GetType(),
"CounterScript", scriptText, true);
}
希望这有帮助。
答案 2 :(得分:0)
创建一个asp:HiddenField(在这种情况下ID是hiddenField)并使用下面的jQuery代码获取复选框值:
它对我有用。你可以从这个问题中查看更多[问题] Get checkbox value in jQuery
$('#chkBooking').click(function (e) {
e.preventDefault();
$('#hiddenField').val($('#chkBooking').val());
$("form").submit();
});
答案 3 :(得分:0)
首先,如果你想在按钮上调用服务器端功能,那么为什么不进行服务器端按钮控制,并在按钮的OnClick事件触发时调用你想要的功能。
<强> YourPage.aspx 强>
<asp:Button runat="server" ID="BigButton" OnClick="BigButton_Click" Text="Big Button" />
<强> YourPage.aspx.cs 强>
protected void BigButton_Click(object sender, EventArgs e)
{
//Call your function from here
}
注意: 您可以使用CssClass属性在服务器端控件上添加css。
<asp:Label CssClass="bingo" ID="displayLabel" runat="server" />
或尝试这个答案: