在同一个页面,想把js的变量值赋值给php的一个变量
在初始化a.php页面时,会给个url,调用持久层,得到数据。再赋值给js的一个变量中functioninitialize(){varurl='catagoryProje...
在初始化a.php页面时,会给个url,调用持久层,得到数据。再赋值给js的一个变量中
function initialize() {
var url = 'catagoryProjectsProcess.php?action=list';
window.httpObj = createXMLHTTPObject();
window.httpObj.open('GET', url , true);
window.httpObj.onreadystatechange = function(){
if (window.httpObj.readyState == 4 && window.httpObj.responseText){
// populate the fields
var json=window.httpObj.responseText;
//此时responseText为 {"name":"test“,"nick":"nicktest"}的字符串
......
}
}
}
然后下面的body里会用到这个json值。
如何传递这个变量值?? 展开
function initialize() {
var url = 'catagoryProjectsProcess.php?action=list';
window.httpObj = createXMLHTTPObject();
window.httpObj.open('GET', url , true);
window.httpObj.onreadystatechange = function(){
if (window.httpObj.readyState == 4 && window.httpObj.responseText){
// populate the fields
var json=window.httpObj.responseText;
//此时responseText为 {"name":"test“,"nick":"nicktest"}的字符串
......
}
}
}
然后下面的body里会用到这个json值。
如何传递这个变量值?? 展开
5个回答
展开全部
php直接获取js变量的值确实比较难,用ajax当然也可以办到,但是我想到一种绕过去的办法,我们可以在页面中定义一个隐藏的input,再使用php获取input的value值,例如:
php:
<?php
if(isset($_POST['submit'])){
$delete = $_POST['delete'];
echo "javascript中变量a的值:".$delete;
}
?>
js:
<script>
var a="123";
var num = document.getElementById("delete");
num.setAttribute("value",a);
</script>
页面表单:
<form name="form" method="post" action="">
<input id="delete" name="delete" style="display:none" />
<button name="submit" type="submit">获取</button>
</form>
php:
<?php
if(isset($_POST['submit'])){
$delete = $_POST['delete'];
echo "javascript中变量a的值:".$delete;
}
?>
js:
<script>
var a="123";
var num = document.getElementById("delete");
num.setAttribute("value",a);
</script>
页面表单:
<form name="form" method="post" action="">
<input id="delete" name="delete" style="display:none" />
<button name="submit" type="submit">获取</button>
</form>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
大概你搞混了PHP和JS的运行机制
PHP是服务器语言,在你的网页已经显示在浏览器端的时候,PHP的使命已经结束了,你在浏览器端也看不到任何PHP语言的内容,查看源文件你就会发现这一点
JS是浏览器语言,它可以一直运行在浏览器中,网页上的事件,都可以调用JS
所以你的JS变量不可能传给PHP,因为此时,PHP的代码已经不存在了
如果你想交由PHP处理,可以打开新页面,用GET传递过去,再由PHP解析,或者用AJAX,传递给新的PHP页面处理。在你的例子中,已经有AJAX的内容,完全可以在得到responseText前在PHP中处理后交给前台
PHP是服务器语言,在你的网页已经显示在浏览器端的时候,PHP的使命已经结束了,你在浏览器端也看不到任何PHP语言的内容,查看源文件你就会发现这一点
JS是浏览器语言,它可以一直运行在浏览器中,网页上的事件,都可以调用JS
所以你的JS变量不可能传给PHP,因为此时,PHP的代码已经不存在了
如果你想交由PHP处理,可以打开新页面,用GET传递过去,再由PHP解析,或者用AJAX,传递给新的PHP页面处理。在你的例子中,已经有AJAX的内容,完全可以在得到responseText前在PHP中处理后交给前台
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把问题简单化,你要实现什么功能,然后给你思路,这样就好办了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用ajax传过去。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询