2

これが私のコードです(簡略化):

function FillTable ( oProfile_data ) {

    var oTable = document.getElementById ( "table" );

    for ( var key in oProfile_data ) {

        var oRow = oTable.insertRow ( oTable.rows.length );
        var oCell = oRow.insertCell ( 0 );

        var oLink = document.createElement ( "a" );
            oLink.href = "javascript:void(0)";
            oLink.innerHTML = "Visit Homepage";

            oLink.addEventListener ( "click",
            function () {
                var win = window.open ( oProfile_data [key]["url"], "_blank" );
                win.focus();
            }, false );

        oCell.appendChild ( oLink );
    }
}

問題は、すべての行に同じドキュメントへのリンクがあり、その理由がわかりません!

私の一時的な解決策は次のとおりです。

oLink.href = "javascript:void(0); var win = window.open ( \"" + oProfile_data [key]["url"] + "\", \"_blank\" ); win.focus();";

これはうまくいきます。イベントオーバーライドの問題だと思いますが、間違っているかもしれません。

どんな助けでも本当に感謝します!

4

1 に答える 1