我编写了一个由 button.onclick()
事件调用的 JavaScript 函数,但该函数未被调用。相反,我的表单操作被执行。
HTML:
<form id = "Documents" action="Uploaded.php">
<input type="submit" id="Remove1" name="Remove[1]" value="Remove first" onclick="return Remove('Remove1');">
<input type="submit" id="Remove2" name="Remove[2]" value="Remove second" onclick=" return Remove('Remove2');">
</form>
更新了 JavaScript:
function Remove(currentDoc)
{
if (window.XMLHttpRequest)
{
xmlhttp=new XMLHttpRequest();
}
else
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("Removemsg").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","functions/remove.php?Doc="+currentDoc,true);
xmlhttp.send();
return false;
}
它调用uploaded.php
而不是我的remove.php
。但我已经定义了 onclick
函数来调用 remove.php
。请指教。
最佳答案
向函数remove()
添加一个return false;
语句以防止表单提交。
而且您的 onclick="Remove()"
应该是 onclick="return Remove();"
你的JS代码也有错误
function Remove(currentDoc)
{
if (window.XMLHttpRequest)
xmlhttp=new XMLHttpRequest();
else
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("Removemsg").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","functions/remove.php?Doc="+currentDoc,true);
xmlhttp.send();
return false;
}
关于javascript - 让按钮 onclick 调用函数而不是表单操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11451929/