我有一个带有此脚本的主页,用于将status.html加载到我的info-Box_main div中
window.onload = ajax_req('scripts/home/PHP/status.html', 'info-Box_main');
加载的status.html文件如下所示.
<div id="status_update">
<form id="status_form" method="post" action="/scripts/home/PHP/statusUpdate.PHP/">
<textarea name="status_update" placeholder="Type Link update here. " id="status_field" ></textarea>
<input type='submit' value='post'/>
</form>
</div>
<div id='status-Box'>
<button onclick="myFunction('Harry Potter','Wizard')">Try it</button>
<script>
function myFunction(name,job){
alert("Welcome " + name + ", the " + job);
}
</script>
</div>
ajax_req函数
function ajax_req(file_location, document_element)
{
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
} //ajax update request
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById(document_element).innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET", file_location ,true);
xmlhttp.send();
}
除了javascript之外,其他一切都正常.我收到一个错误消息,当我尝试单击该按钮时,该函数未定义.任何帮助都是极好的!这只是测试javascript …不是我需要的实际javascript
解决方法:
将元素的innerHTML属性设置为包含< script>标签不会在我所知道的任何浏览器中运行脚本内容.
如果确实使用jQuery,则绝对没有理由编写自己的Ajax工具,并且jQuery .load()方法将为您处理脚本内容.
$('#info-Box_main').load('scripts/home/PHP/status.html');
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。