将javascript事件添加到输入复选框以在asp.net后面的代码中执行,

时间:2014-07-22 18:59:47

标签: javascript asp.net events

我在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;");

如何在后面的代码中调用该事件?

4 个答案:

答案 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" />

或尝试这个答案:

How to call a C# function from javascript?