需要windows.onload和IE的帮助

时间:2013-08-12 17:17:05

标签: php javascript

我目前有一个电子邮件模板表。用户可以单击该模板,并在单击的td上填充待处理的电子邮件模板字段。我有一个JS脚本在FF中工作正常,但在IE中没有。

以下是我的php for Ike的伪代码。

$somevar = mysql_query("...");
while (($anothervar = mysql_fetch_assoc($somevar))) {
    echo '<tr><td class="test">'.$email['email_name'].'</td><tr>';
}

这是我现有的JS只适用于FF。

function getName(e) {
    $('input[name="Clear Button"]').click(function () {
        $('span').text('');
    });
    var cell = e.target;
    cell = cell.innerHTML;
    if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari
        xmlhttp = new XMLHttpRequest();
    } else { // code for IE6, IE5
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
    xmlhttp.onreadystatechange = function () {
        if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
            document.getElementById("test").innerHTML = xmlhttp.responseText;
        }
    }
    xmlhttp.open("GET", "/includes/adminPages/Update_Email.inc.php?selection_id=" + cell, true);
    xmlhttp.send();
}


window.onload = function () {
    var cells = document.getElementsByClassName("test");
    for (var i = 0, len = cells.length; i < len; i++) {
        cells[i].onclick = getName;
    }
};

为了记录,我确实看了下面的例子,但这并没有解决我的问题。

window.onload = new function() { alert('hello');};

1 个答案:

答案 0 :(得分:2)

我看到你正在使用jQuery,所以也许让我们重写它

$(window).on('load', function() {
    $('.test').on('click', function() {

        var id = $(this).html();

        $.get("/includes/adminPages/Update_Email.inc.php?selection_id=" + id, function(data) {
            $('#test').html(data);
        });
    });
});