我使用的是 jQuery 1.9.1,这段代码在 IE9、Firefox 和 Chrome 中运行良好。问题是我在 IE7 和 IE8 中也需要它,但不起作用。
我有一个使用 id="selec"
和 name="selec"
的输入复选框
用户可以选择许多复选框,然后将它们传递给 JavaScript 函数。
IE7 和 IE8 控制台不显示任何错误,只是不起作用。
我一直在寻找许多解决方案,但没有一个适合我。我认为问题出在:
$('#selec:checked').each(function()...
因为此行收集选定的选项,然后将它们推送到名为 "selectedItems"的数组内
这是我的 JavaScript 函数:
function enviaMailNominaFiltrada() {
$(document).ready(function () {
var selectedItems = new Array();
$('#selec:checked').each(function () {
selectedItems.push($(this).val());
});
var seleccionados = '<cfoutput>#todosSeleccionados#</cfoutput>' + ',' + selectedItems;
var selecLargo = seleccionados.length;
if (seleccionados.substring(selecLargo - 1) == ',') {
var selecFiltrado = seleccionados.substring(0, seleccionados.length - 1);
}
else {
var selecFiltrado = seleccionados;
}
if (selectedItems != '' || selecFiltrado != '0') {
var info = "selectedItems=" + selectedItems;
document.getElementById('lista2').value = selecFiltrado;
document.enviarMail.action = 'enviarpostulantes.cfm';
document.enviarMail.submit();
}
else {
alert('Debe seleccionar al menos un registro para enviar nómina');
}
});
}
最佳答案
这一行:
$('#selec:checked').each(function () {
向我表明您使用具有相同 id 的多个 DOM 元素 (selec
) - 这将是您出现问题的原因。
如果 DOM 元素指定了 id
属性 - 该值对于同一文档上的所有其他 DOM 元素必须是唯一的
使用一个类...
<select class="myclass">
...
</select>
$('.selec:checked').each(function () {
关于javascript - jQuery 1.9.1 $ ('#idCheckbox:checked' ) IE7 和 IE8 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16591806/