【问题标题】:Having trouble programatically selecting a radio button using jQuery in Firefox 5在 Firefox 5 中使用 jQuery 以编程方式选择单选按钮时遇到问题
【发布时间】:2011-06-24 01:37:14
【问题描述】:

我正在尝试使用 jQuery 1.4.2 以编程方式选择单选按钮。它适用于 IE 8Chrome 12,但似乎不适用于 Firefox 5

单选按钮的 HTML 是:

<input type='radio' name='selected-row'>

我使用的代码如下,radioButton 是一个 jQuery 对象。

    onCellSelect: function (rowid, iCol, cellcontent, e) {
        var cell = $(e.srcElement);
        var radioButton = cell.closest("tr").find("input[type='radio']");

        radioButton.click();
    }

我还尝试根据我在谷歌上搜索到的内容使用以下内容,该内容适用于 IE 和 Chrome,但不适用于 Firefox。

 radioButton.attr("checked", "true");
 radioButton.button("refresh");

如何让它在 Firefox 中工作?

【问题讨论】:

  • 你可以试试新的.prop() setter,看看你是否有更多的运气使用`radioButton.prop("checked", true)。没有使用 FF5,不知道你使用的是什么版本的 jQ,所以我不知道会发生什么。
  • 我正在使用 jQuery 1.4.2 但无法升级。
  • 我将var cell = $(e.srcElement); 更改为var cell = $(e.target);,现在它可以在所有三种浏览器中使用。

标签: jquery html firefox radio-button firefox-5


【解决方案1】:

与上面的 takeek 一样,以下作品在 Firefox 5 中运行

<input id="myRadioButton" type="radio" name="selected-row">

使用作品

$('#myRadioButton').attr('checked', true);

检查您的 radioButton 变量是否符合您的预期。你是如何选择你的单选按钮的?

prop() 也只在 1.6 中引入 jQuery,所以 attr() 在这里很好。

【讨论】:

  • 好点,radioButton 变量的长度为零,这似乎是由 Firefox 不支持 srcElement 引起的,而其他浏览器必须这样做。
  • e.target 似乎可以胜任。
【解决方案2】:
<input type="radio" value="The Answer" name="choices" id="myRadio">

-

$('#myRadio').attr('checked', true);

在 Firefox 5 中对我来说效果很好。我认为您的问题一定出在其他地方。可能是另一个特定于 Firefox 的错误阻止它到达该行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-12-08
    • 1970-01-01
    • 1970-01-01
    • 2014-03-21
    • 1970-01-01
    • 1970-01-01
    • 2022-11-16
    • 1970-01-01
    相关资源
    最近更新 更多