Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php jQuery浏览器兼容性(IE)_Php_Jquery_Xml_Internet Explorer_Compatibility - Fatal编程技术网

Php jQuery浏览器兼容性(IE)

Php jQuery浏览器兼容性(IE),php,jquery,xml,internet-explorer,compatibility,Php,Jquery,Xml,Internet Explorer,Compatibility,由于我试图向您展示的源代码相当长且复杂,我只想提供一个指向我遇到问题的页面的链接 如果您在Google Chrome或最新版本的Firefox(5或6)中使用此脚本,您将注意到此脚本中的jQuery是如何工作的。它的工作方式正是我希望它在那些浏览器中工作的方式 然而,我目前很难弄清楚为什么它在IE6、IE7和IE8中不能正常工作。。。我愿意对IE6说“随便什么”,但我真的希望在IE7和IE8中实现这一点。通过查看我的源代码,您是否可以看到导致IE7和IE8出现问题的任何东西 主要问题(在Chr

由于我试图向您展示的源代码相当长且复杂,我只想提供一个指向我遇到问题的页面的链接

如果您在Google Chrome或最新版本的Firefox(5或6)中使用此脚本,您将注意到此脚本中的jQuery是如何工作的。它的工作方式正是我希望它在那些浏览器中工作的方式

然而,我目前很难弄清楚为什么它在IE6、IE7和IE8中不能正常工作。。。我愿意对IE6说“随便什么”,但我真的希望在IE7和IE8中实现这一点。通过查看我的源代码,您是否可以看到导致IE7和IE8出现问题的任何东西

主要问题(在Chrome中使用jQuery,然后在IE中使用jQuery后,您会注意到)是,当单击一个团队时,它将禁用输入字段,并在接下来的几周内对该团队进行攻击。但是,IE中的输入已正确禁用,但strike(jQuery中的addClass)不起作用

我愿意提供更多的信息。。。。我还不想让信息过载。但这一直是我几个小时以来一直在努力解决的问题

提前感谢您的帮助。我会接受最好的答案并投票支持!谢谢

下面是代码更新

以下是我当前的javascript/jquery代码:

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> 
<script type="text/javascript"> 
$(document).ready(function () {

    $('.radio:checked').addClass("selected");
    $('.pickbox').text($('.radio:checked').val());

    var selected_week = $('#weekselect').val();

    $('table.weekbox').hide();
    $('table#weekbox' + selected_week).show();
    $('span.selection.text').html('<br/>My Week ' + selected_week + ' Selection:');


    $('input.radio').change(function () {
        $('.teambox').find('span.strike').removeClass('strike');
        var selected = $(this).val();
        var us_selected = selected.replace(/ /g, "");

        $('.radio:not(:checked)').removeClass('selected');
        $('.radio:not(:checked)').next('span').css('color', '');
        $('.radio:not(:checked)').removeAttr('disabled');
        $('.radio:checked').addClass('selected');
        $('.pickbox').text($(this).val());
        $('.pickbox').css('border', '3px dashed #88cc33');
        //$('.pickbox').text($('.teambox').find('span.' + us_selected).text());
        $('.teambox').find('span.' + us_selected).addClass('strike');

        $('.selected').each(function () {
            var selected_team = $(this).val();
            var x_selected_team = selected_team.replace(/ /g, "");
            $('.teambox').find('span.' + x_selected_team).text(selected_team).addClass('strike');
            $('table.weekbox').find('td input[value="' + selected_team + '"]').attr('disabled', 'disabled');
            $('.selected').next('span').css('color', '#88cc33');
        });
    });


    $('#weekselect').change(function () {
        var selected_week = $('#weekselect').val();

        if ($('input[name="Week' + selected_week + '"]').is(':not(:checked)')) {
            $('table.weekbox').hide();
            $('table#weekbox' + selected_week).show();
            $('span.selection.text').html('<br/>My Week ' + selected_week + ' Selection:');
            $('.pickbox').css('border', '1px dashed #FFFFFF');
            $('.pickbox').text('');
        }

        $('table.weekbox').hide();
        $('table#weekbox' + selected_week).show();
        $('span.selection.text').html('<br/>My Week ' + selected_week + ' Selection:');
        $('input:not(:checked)').next('span').removeClass('strike');
        $('input[disabled]:not(:checked)').next('span').addClass('strike');

        $('.pickbox').text($('input.radio[name="Week' + selected_week + '"].selected').val());

        if ($('.pickbox').text() != "") {
            $('.pickbox').css('border', '3px dashed #88cc33');
        }

        $('.selected').each(function () {
            var selected_team = $(this).val();
            var x_selected_team = selected_team.replace(/ /g, "");
            $('.teambox').find('span.' + x_selected_team).text(selected_team).addClass('strike');
        });

    });
});
</script>

我想上面的代码就是我的问题所在。。。让我的属性在IE中无法正确读取有什么奇怪的地方吗?

您需要正确关闭输入标记

<input type="radio" class="radio" name="Week1" value="New York Jets"></input> //Incorrect
<input type="radio" class="radio" name="Week1" value="New York Jets" /> //Correct
//不正确
//正确的
Chrome似乎足够聪明,可以修复它,并将
作为前一个输入元素的一部分,但如果你在IE中尝试这一点,你会发现它认为
是下一个标签<代码>$(“foo”)。下一个(“span”)将仅选择下一个元素(如果它是span)


哇。。。如果是这样的话。。。你是我的英雄丹尼斯,丹尼斯,成功了!非常感谢你。哎呀。谢谢,谢谢,谢谢。
$('input[disabled]:not(:checked)').next('span').addClass('strike');
<input type="radio" class="radio" name="Week1" value="New York Jets"></input> //Incorrect
<input type="radio" class="radio" name="Week1" value="New York Jets" /> //Correct