我不确定这是否可行,但现在就去了。
我有一个名为code_check_result($ code_name)的PHP函数。它检查数据库并返回一堆有关提供的代码名称的信息。
代码的名称位于页面的span标记内。我创建了一个javascript函数,打开一个新窗口,然后执行PHP函数。但是,PHP函数中所需的变量存储在jquery var中,因为我选择了span标记并存储在其中的任何内容。
下面你可以看到创建窗口的代码部分(只是带有PHP函数的部分)。
myWindow.document.write('Tjek: ' + code_name + '</br></br></br></br><?php code_check_result("kode2"); ?>');
&#34; kode2&#34;是代码的实际名称。以上工作完全符合它的要求。但是,如果我替换&#34; kode2&#34;使用javascript变量的字符串&#39; code_name&#39;,它不起作用。像这样:
myWindow.document.write('Tjek: ' + code_name + '</br></br></br></br><?php code_check_result("' + code_name + '"); ?>');
第一次出现的code_name将它写入页面,但PHP函数中的第二个却无法正常工作。
我很确定这只是因为PHP在&#39; code_name&#39;之前执行。变量写为字符串。但我并不完全确定。
所以,如果你能帮助我弄清楚如何做到这一点,我会很感激,或者告诉我放弃这个想法,因为它不可能,然后给我一些关于如何做的指示解决这个问题。
答案 0 :(得分:1)
鉴于此:
PHP函数中所需的变量存储在jquery var
中
和此:
我已经制作了一个打开新窗口的javascript函数
它听起来像你只需要将值传递给在该窗口中打开的URL。所以你可能会有这样的地方:
window.open('somePage.php');
你会改为:
window.open('somePage.php?someValue=' + myVariable);
正在打开的窗口的URL是与任何其他窗口一样的普通URL。您可以在查询字符串中包含值,somePage.php
中的PHP代码可以从$_GET
集合中读取它们。
答案 1 :(得分:0)
使用jQuery创建$ _POST变量会更容易。像这样:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script>
$.ajax({
type: "POST",
url: "[URL GOES HERE]",
data:{ VARNAME: VALUE },
success: function(data){
console.log(data);
}
})
</script>