过去我使用.load()将数据加载到页面上的特定DIV中。
我想运行一个PHP脚本,并在查询字符串中传递一些参数,然后在页面中打印结果。
它会像这样,我有脚本的结果我想运行脚本,并传递参数,然后打印结果。
该脚本在站点的其他地方使用,它接收查询字符串中的参数,并打印结果。
如果有办法在PHP中执行此操作,我不必使用Javascript吗?但是我不知道用PHP做这件事的方法,并且能够将它作为查询字符串传递。
while($row = mysql_fetch_array($rooms))
{
//Run the price script and print result
print "<div id=\"price-result\">";
print *RESULT OF SCRIPT*;
print "</div>";
}
答案 0 :(得分:1)
我将假设所需的是在页面中间执行此操作的方法:
<div>
Blah blah content content
<script src='magic.js'></script>
Blah blah more content
使脚本运行并且页面上的结果为
<div>
Blah blah content content
<div class='wow-I-was-just-loaded-dynamically'>
Dynamic stuff blah blah
</div>
Blah blah more content
如果是这样,那么我认为唯一的方法是让脚本执行以下操作:
document.write("<div id='magic'></div>");
然后启动相应的异步调用以加载内容:
setTimeout(function() {
$('#magic').load(url, function() { ... });
}, 5);
(我不是100%确定需要在超时时间内完成;这取决于是否通过document.write()
调用立即正确更新了DOM。)
答案 1 :(得分:0)
不要依赖jquery来做所有事情。您要找的是document.write()
。使用.ajax
获取内容,然后document.write()
输出内容。它将在包含函数调用的脚本标记之后立即输出。
答案 2 :(得分:0)
你需要在等式中的某个占位符。您可以使用选择器和append方法向DOM元素添加内容。它可以是ID,类或标签。
$(document).ready(function() {
$.ajax( {
...
success: function(data) { $("#some_id").append(data); }
// OR to append to the body $("body").append(data)
});
});
<table>
...
<tr>
<td id="some_id">Some stuff</td>
</tr>
</table>
全部取决于您希望它出现的位置。您可以将.html和.append与您喜欢的任何选择器结合使用。