0

我正在使用 jQuery UI 来增强两个 ASP.Net 收音机。单击时我想更改 UI,当我使用 Chrome 调试器单步执行时,它按预期工作,直到函数结束时退出,调试器然后进入实际的 jquery 源,以及我的更改代码被还原。到底是怎么回事?

功能如下:

$('input:radio').change(function(e){
            e.preventDefault();
            var $this = $(this);
            var uploadBox = $this.parent().parent().next();
            var manualBox = $this.parent().parent().next().next();
            if ($this.attr('id') == "<%= UploadRadioButton.ClientID %>"){
                manualBox.hide();
                uploadBox.show();
            }
            else{
                uploadBox.hide();
                manualBox.show();
            }
        }
     );

(.toggle() 由于某种原因不起作用)

调试器进入这个 jQuery 源代码片段:

if ( ret !== undefined ) {
    event.result = ret;
    if ( ret === false ) {
    event.preventDefault();
    event.stopPropagation();
    }
 }

编辑:我忘了提到 javascript 位于 UserControl 中。

4

1 回答 1

1

当它完成您的事件处理程序时,它会进入管理事件处理程序的 jQuery 代码(实际调用您的事件处理程序的代码),您在此处发布的是 jQuery 代码,而不是处理来自您的事件处理程序的返回值以确定您是否打算停止传播并防止默认行为。这是完全正常的。

于 2012-09-09T23:24:44.510 回答