我有以下javascript代码:
http://www.nomorepasting.com/getpaste.php?pasteid=22561
其中函数makewindows似乎不起作用。
它确实会创建一个窗口,但是html要么包含什么是引号,要么我将其更改为
child1.document.write(json_encode($row2["ARTICLE_DESC"]));
创建一个空白的html页面。
我将此功能移至我的主要javascript文件以包含,因为我之前收到错误,但现在popupwindow中没有显示html。这是因为我没有在thest3.php中检索article_Desc吗?
使用的其他2个文件在这里:
http://www.nomorepasting.com/getpaste.php?pasteid=22562
和test3.php
答案 0 :(得分:3)
$ row2 [“ARTICLE_DESC”]是PHP变量。
它确实是一个php变量,但是它没有被渲染为php,因为它没有包含在<?php ?>
标签中
所以,正确的方法是:
child1.document.write(<?php echo json_encode($row2["ARTICLE_DESC"]); ?>);
这样,作为服务器端语言的php将在呈现页面之前呈现$ row2中的值,因此当页面最终被呈现时,该值将在javascript write
函数中。 ..它应该是。
答案 1 :(得分:2)
打印php变量你需要php标签:
child1.document.write(<?php echo json_encode($row2["ARTICLE_DESC"]); ?>);
答案 2 :(得分:0)
$ row2 [“ARTICLE_DESC”]是PHP变量。
答案 3 :(得分:-1)
我怀疑它是在PHP解释器解析之后包含javascript。尝试在makewindows中添加一个参数,并在构造HTML时通过参数传递您打算使用的值。
...
<p><a href='#' onclick='makewindows('"
. json_encode($row2["ARTICLE_DESC"])
. "'); return false;'>...
function makewindows(html){
child1 = window.open ("about:blank");
child1.document.write(html);
child1.document.close();
}