0

我有一个单选按钮,我使用图像背景将其屏蔽为按钮。当用户单击包含单选按钮的 li 时,我将单选按钮打包为对象“el”并运行一个函数以使用该元素作为参数来获取结果。这在 FF 和 Chrome 中运行良好,但我收到一个错误,即元素为空或不是对象。

谁能看到我的问题?

var selectedid = $this.find("[type='radio']").attr('id');
document.getElementById(selectedid).checked = true;
var el = document.getElementById(selectedid);
var el = $(el);
showResults( el );


function showResults( el ) {
    var id = el[0].dataset['item'];
    alert(id);
}
4

1 回答 1

2

您的代码效率很低,.dataset并非所有浏览器都支持。由于您已经在使用 jQuery,我建议您像这样清理您的代码:

var selected = $this.find("[type='radio']").first().prop("checked", true);
showResults( selected );


function showResults( el ) {
    var id = el.data("item");
    alert(id);
}
于 2012-08-14T00:28:31.153 回答