0

IE7 または IE8 では動作しない jQuery スクリプトがあります。興味深いことに、このページには他にもいくつかアクティブな jQuery スクリプトがあり、これらはすべて機能しますが、以下のスクリプトはまったく機能しません。

機能を実証するために、このjsFiddle を作成しました。これは、IE9+、Chrome、および Firefox で動作します。

このコードは、特定の基準に基づいてテキスト ボックスの値を更新します。

$(function () {
    $(".TAB1text1").change(function () {
        var $tr = $(this).parent().parent();
        var type = $tr.find("td:eq(1)").text();
        var scale = $tr.find("td:eq(6) input").val();
        if (type == " CERTAIN_TEXT_TOTAL " && (scale == 3 || scale == 3.0)) {
            $(".TAB1text1").not(this).val($(this).val());
        }
    });
});

これらのスクリプトが IE7 および IE8 で機能しなくなる原因となる機能やエラーを見つけられる人はいますか?

4

2 に答える 2

0

私はこの問題を解決することに成功しました。

まず、.trim()うまくいきませんでした(そのため、ソースコードを編集してスペースを削除しました:

$(function () {
    $(".TAB1text1").change(function () {
        var $tr = $(this).parent().parent();
        var type = $tr.find("td:eq(1)").text();
        var scale = $tr.find("td:eq(6) input").val();
        if (type == " CERTAIN_TEXT_TOTAL " && (scale == 3 || scale == 3.0)) {
            $(".TAB1text1").not(this).val($(this).val());
        }
    });
});

次に、<meta>HTML<head>タグ内のタグを微調整して、以下を含める必要がありました。

<meta content="IE=EmulateIE7">

今後の参考のためにここに残しておきます - お役に立てば幸いです。

于 2013-06-25T11:23:43.343 に答える