是否可以在AJAX请求的文件中包含文件? 是否可以在AJAX请求的文件中运行php或JavaScript脚本?
此代码适用于index.php文件
<div id="test">
<script>
$("#test").load("web_elements/nihongo/price_list_kumagai.inc");
</script>
</div> <!--<div id="test"> -->
当我在AJAX请求的文件中尝试相同的代码时,它不包含该文件。 在包含的文件中,我似乎无法运行任何脚本(不是JavaScript,而不是php)HTML正确解析。
当我通过AJAX请求此文件时
<h3>Price list</h3>
<script>
alert( "You are running jQuery version: " + $.fn.jquery );
</script>
<p>
幼稚園<br>
</p>
HTML正常显示,但标签内的所有内容都会被忽略。
导航
<a href="#" onclick="loadXMLDoc(language, '/home.inc')">ホーム</a>
LoadXMLDoc函数
<script>
function loadXMLDoc(language, pageString)
{
var xmlhttp;
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("page_content").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET",language+pageString, true);
xmlhttp.send();
}
</script>
LoadXMLDoc函数在我使用JQuery之前。也许我应该用JQuery库中的load()替换它。
答案 0 :(得分:1)
您可以使用jQuery.getScript()
使用GET HTTP请求从服务器加载JavaScript文件,然后执行它。
这是一个简写的Ajax函数,相当于:
$.ajax({
url: url,
dataType: "script",
success: success
});
您还可以使用.load()
方法
您的代码正常运行并在我删除时加载脚本
document.getElementById("test").innerHTML=language;
行:
price_list_kumagai.inc
<body>
<h3>Price list</h3>
<script>
alert( "You are running jQuery version: " + $.fn.jquery );
</script>
<p>
幼稚園<br>
</p>
</body>
ajax加载
<div id="test">
<script>
$("#test").load("web_elements/nihongo/price_list_kumagai.php");
</script>
</div>