0

所以一个html表单是使用ajax动态创建的。在 html 表单中有一个按钮,它的 onclick 事件绑定到一些 javascript。javascript 在 FF、Opera、IE 中成功触发,但在 chrome 中没有任何反应。知道问题可能是什么吗?

    <div id="s">
    <input type="button" class="button" value="reply" onclick="comment()"/>
    </div>


    function comment()
    {
    var xmlhttp;
    if (window.XMLHttpRequest)
    {
        xmlhttp=new XMLHttpRequest();
    }
    else
    {
       xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }

    xmlhttp.onreadystatechange=function()
    {
       if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
        document.getElementById("s").innerHTML=xmlhttp.responseText;
    }
}

xmlhttp.open("post","replyForm.php",true);
xmlhttp.send();

    }

function remove() {
var xmlhttpp;
if (window.XMLHttpRequest)
{
    xmlhttpp=new XMLHttpRequest();
}
else
{
    xmlhttpp=new ActiveXObject("Microsoft.XMLHTTP");
}

xmlhttpp.open("post","replyButton.php",true);
xmlhttpp.send();

xmlhttpp.onreadystatechange=function()
{
    if (xmlhttpp.readyState==4 && xmlhttpp.status==200)
    {
        document.getElementById("s").innerHTML=xmlhttpp.responseText;
    }
}

    }

回复表单.php

    <?php
    echo("<script type='text/javascript' src='validation.js'></script>");
    echo("<input type=SUBMIT name=INS value='Submit' class='button' /> <input type='button' class ='button' value='Cancel' onclick=\"remove()\"/> <INPUT TYPE=RESET NAME=RES VALUE='Clear' class='button' />");
    ?>

回复按钮.php

    <?php
    echo("<script type='text/javascript' src='validation.js'></script>");
    echo("<input type='button' class='button' value='reply' onclick='comment()'>");
    ?>
4

1 回答 1

0

由于页面是动态创建的。事件处理程序未分配给按钮或任何元素。

用于bind() 将事件处理程序绑定到元素。这应该用来代替普通的点击事件处理程序

绑定教程

于 2013-03-31T06:39:28.063 回答