簡體   English   中英

將javascript事件添加到輸入復選框以在asp.net的代碼后執行,

[英]Add javascript event to input checkbox to execute in codebehind asp.net,

我在aspx頁面中有一個html控件。

  <input type="checkbox" name="Booking" id="chkBooking" class="css-checkbox" runat="server" /><label for="chkBooking" class="css-label">Booking</label>

我想在單擊復選框時添加一個javascript事件,該事件將在代碼隱藏中執行,就像我在網上找到的以下示例一樣:

TextBox1.Attributes.Add("onkeyup", displayControlName + 
    ".innerText=this.value.length;");

如何在后面的代碼中調用該事件?

不太了解這個問題。 您可以在asp.net復選框上設置AutoPostback =“ true”並設置其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
}

您可以在選中的事件上添加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);
 }

希望這可以幫助。

創建一個asp:HiddenField(在這種情況下,ID為hiddenField),並使用以下jQuery代碼獲取復選框值:

這個對我有用。 您可以從這個問題中查看更多[問題] 在jQuery中獲取復選框值

$('#chkBooking').click(function (e) {
    e.preventDefault();            
        $('#hiddenField').val($('#chkBooking').val());
    $("form").submit();
        });

首先,如果您想在Button click上調用服務器端函數,那么為什么不觸發服務器端按鈕控件,並在Button的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" />

或嘗試以下答案:

如何從javascript調用C#函數?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM