0

JQuery の $.tmpl() レンダリングはブラウザーによって大きく異なることがわかりました。主にIEバージョン。以下のコードを更新パネルに配置すると、.appendTo("#divList");メソッドでエラーがスローされます。

これに対する修正は何ですか - 以下のコード例

Mozilla: 成功

IE ブラウザ モード (IE9 Compat View)、ドキュメント モード (IE9 標準): SUCCESS

IE ブラウザ モード (IE9)、ドキュメント モード (IE9 標準): SUCCESS

IE ブラウザ モード (IE8)、ドキュメント モード (IE9 標準): SUCCESS

IE ブラウザ モード (IE7)、ドキュメント モード (IE9 標準): SUCCESS

IEブラウザモード(※)、ドキュメントモード(IE8規格):FAIL(何もレンダリングしない)

IEブラウザモード(※)、ドキュメントモード(IE7規格):FAIL

IEブラウザモード(※)、ドキュメントモード(Quirksモード):FAIL

<head runat="server"> 
 <meta http-equiv="X-UA-Compatible" content="IE=8;FF=3;OtherUA=4" /> 
 <script src="http://code.jquery.com/jquery-latest.min.js"></script>
 <script src="http://ajax.microsoft.com/ajax/jquery.templates/beta1/jquery.tmpl.min.js"></script> 

<script type="text/javascript"> 

    $(function () {

        var a = [
            { actor: 'hanks', film: 'yo mama' },
            { actor: 'banks', film: 'men can swim' },
            { actor: 'will', film: 'men can swim' },
            { actor: 'jlo', film: 'ooogh aah' },
            { actor: 'jlo', film: 'bright yellow shadows' }
        ];

        $('#txDibaba').live("keyup", function () {
            $("#divList").empty();
            $('#PM_tmpl').tmpl(blep(a, 'actor', $(this).val())).appendTo("#divList"); 
        });

    });

    function blep(arr, prop, value) {
        return $.grep(arr, function (item) { return item[prop] == value }); 
    }
</script>
    <script id="PM_tmpl" type="text/x-jquery-tmpl">
    <tr>
        <td style="width:60%;text-decoration:underline;cursor:pointer;">${name}&nbsp; ${strength}&nbsp; ${film}</td>
        <td style="width:200px;"> ${actor} </td> 
    </tr>   
</script> 

<form id="form1" runat="server">


            <input type="text" id="txDibaba" /> 
            <br />

            <div id="divList" style="border:1px solid black; width:400px; padding:2px;"> 

            </div> 

</form> 

IE9モードを強制するのは理にかなっていますか?

4

1 に答える 1

0

あなたが何を求めているのかまだわかりませんが、この場合、IEではなくコードが壊れています。

var a = [
    { actor: 'hanks', film: 'yo mama' },
    { actor: 'banks', film: 'men can swim' },
    { actor: 'will', film: 'men can swim' },
    { actor: 'jlo', film: 'ooogh aah' },
    { actor: 'jlo', film: 'bright yellow shadows' }, //<-- get rid of that ,
];
于 2012-08-14T20:30:15.967 に答える