【问题标题】:Problem accessing OnChange javascript event of Radio Button访问单选按钮的 OnChange javascript 事件时出现问题
【发布时间】:2010-12-11 08:20:06
【问题描述】:

我遇到了同样的问题this individual has。具体来说,我试图让客户端onchange javascript 事件为我的单选按钮触发。不幸的是,代码使用位于单选按钮周围的跨度而不是单选按钮本身上的onchange 呈现。

我在页面中使用其他 javascript 来操作单选按钮,所以 onclick 不能完全满足我的需求。

此外,在上面的链接中给用户的答案是“太糟糕了,使用 html 复选框”。对于我的应用程序,这是低于标准的,因为我需要单选按钮来引发 OnCheckedChange 事件服务器端。

我尝试的一个解决方案(使用 jQuery 1.1.3.1)是自己设置更改事件:

jQuery("input:radio").change(new function() { 
  setParent(jQuery(this)); 
  showUndo(jQuery(this)); 
});

这反映了onclick 事件(当前已实现,我正在尝试转换为 onchange ;))

onclick="setParent(this); showUndo(this);"

不过,这没有用。 :'(

【问题讨论】:

  • 你有没有 .trigger() 你的活动?
  • 将行 new function() 更改为 function()。您立即调用该函数,将返回值传递给change()(这将触发change,而不是绑定到它)。让我们知道这是否能解决任何问题。
  • @JustLoren:这是否意味着new 是问题所在?
  • @crescentfresh:当然是。 Jan 给出的样例也没有新的,而且功能很好。

标签: asp.net javascript jquery radio-button


【解决方案1】:

以下内容按预期对我有用。如果单选发生更改,则触发该事件,并且 onchange 事件处理程序中的“this”指向单选按钮对象。

    <div id="test">
        <input type="radio" name="something"/>
        <input type="radio" name="something"/>
    </div>

    <script type="text/javascript">
        $(document).ready(function() {
            $(":radio").change(function() {
                alert(this.name + ' changed');
            });
        });
    </script>

这能解决您的问题吗?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-11-17
    • 1970-01-01
    • 2020-05-26
    • 1970-01-01
    • 2016-12-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多