1

我正在使用 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');
        }
    });
}
4

1 回答 1

1

这一行:

$('#selec:checked').each(function () { 

向我表明您使用具有相同 id ( selec) 的多个 DOM 元素 - 这将是您的问题的原因。

如果 DOM 元素具有id指定的属性 - 该值对于同一文档上的所有其他 DOM 元素必须是唯一的

使用类...

<select class="myclass">
...
</select>

$('.selec:checked').each(function () { 
于 2013-05-16T15:43:21.783 回答