单击ASP.net单选按钮在JQuery中

时间:2014-02-20 08:02:57

标签: jquery asp.net

我的应用程序中有asp.net单选按钮控件,我想在此控件上使用类名称应用jquery单击事件。我已经设置了CssClass属性并使用类名创建了脚本,但是它不起作用。当我在firebug中检查HTML时,它使用我提供的CSSClass创建了span 这是我的aspx代码

<asp:RadioButton ID="radioyes" CssClass="quest" GroupName="Ques" runat="server" Text="Yes" />
  <asp:RadioButton ID="radiono" CssClass="quest" GroupName="Ques" runat="server" Text="No" />

在浏览器中呈现为

<span class="quest"><input type="radio" value="quest2yes" name="ctl00$ContentBody$Wizard1$Q2" id="ctl00_ContentBody_Wizard1_radioyes"><label for="ctl00_ContentBody_Wizard1_radioyes">Yes</label></span>
    <span class="quest"><input type="radio" value="quest2no" name="ctl00$ContentBody$Wizard1$Q2" id="ctl00_ContentBody_Wizard1_radiono"><label for="ctl00_ContentBody_Wizard1_radiono">No</label></span>

当我在控制台中输入$(".quest").length时,它也会显示0

我正在尝试这个

$(".quest").click(function(){
});

我也试过

 $('#<%=radioyes.ClientID%>').click(function () {
});

但仍然无效,它甚至没有在控制台中显示任何错误

2 个答案:

答案 0 :(得分:4)

您可能在dom元素实际加载到页面之前使用代码。

将您的功能包裹在$(document).ready(function ()

$(document).ready(function () {
    $(".quest").click(function () {
        alert('s');
    });
});

答案 1 :(得分:1)

  

事件处理程序仅绑定到当前选定的元素;他们   在您的代码调用.click()

时,页面上必须存在

在将元素实际加载到DOM之前,您正在为元素分配事件处理程序。

因此,您必须使用事件委派

$("document").on("click", ".quest", function () {
    // rest code here
});

<强> .on()