我想通过ajax post调用调用jsp文件。所以我已经完成了以下代码 -
xmlhttp=new XMLHttpRequest();
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
}
var params = "report_id=0&id=1234567890";
xmlhttp.open("POST","/test/jsp/test.jsp",true);
xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xmlhttp.setRequestHeader("Content-length", params.length);
xmlhttp.setRequestHeader("Connection", "close");
xmlhttp.send(params);
}
</script>
</head>
<body onload="loadXMLDoc()">
<div id="myDiv"></div>
现在test.jsp如下所示 -
<html>
<head>
<script language="JavaScript">
function hello()
{
alert("Hello");
//Do my stuff
}
</script>
<title>test Page</title>
</head>
<body topmargin="0" leftmargin="0" onload="hello()">
<form name="mainForm" >
</form>
</body>
</html>
问题是,打开我的第一个html页面时,我没有收到警告信息。这里有什么问题,需要做什么?
答案 0 :(得分:2)
不使用onload函数,而是使用ready函数作为
$( document ).ready(function()
{
//here you can call hello function
})
答案 1 :(得分:0)
当你像这样进行ajax调用时,你不会执行javascript。
一旦进行了ajax调用,你应该在主页上触发一个不在ajax页面上的函数
$.ajax({
type: "POST",
url: "test.jsp",
success: function(){
hello();
},
error: function(){
alert("error");
}
});
function hello()
{
}