jQuery 单选按钮 onChange 不起作用

gen*_* b. 1 html javascript jquery

我按照这个例子来捕获一个单选按钮组的 onChange() jQuery 事件: JQuery $(#radioButton).change(...) 在取消选择期间不触发

但就我而言,该示例中给出的解决方案不起作用。我的 JSP 生成了以下内容:

<input id="object.reportEntity.reportEntityIsPrime1" name="object.reportEntity.reportEntityIsPrime" type="radio" value="Y_YES" checked="checked"/>Prime                             

<input id="object.reportEntity.reportEntityIsPrime2" name="object.reportEntity.reportEntityIsPrime" type="radio" value="N_NO"/>Not Prime
Run Code Online (Sandbox Code Playgroud)

JS:

$(document).ready(function() {      

    // Display Alert on Radio Change    
    $('input[name=object.reportEntity.reportEntityIsPrime]:radio').change(function () {
        alert('Radio Button clicked');
    }); 
}
Run Code Online (Sandbox Code Playgroud)

警报未显示。另外,还有这个错误:

语法错误,无法识别的表达式“输入”

scn*_*iro 5

您应该委托事件。

事件委托允许我们将单个事件侦听器附加到父元素,该事件侦听器将为匹配选择器的所有后代触发,无论这些后代现在存在还是将来添加。

此外,您需要添加"您的选择器,例如[name=""]观察以下内容...

$('body').on('change', 'input[name="object.reportEntity.reportEntityIsPrime"]:radio', function() {
    alert('Radio Button clicked');
});
Run Code Online (Sandbox Code Playgroud)
  • 旁注:您);ready函数结束时丢失了

JSFiddle 链接- 工作演示

另外,请务必查看jQuery 理解事件委托文档以获取更多信息