你好php是服务端脚本语言,js是浏览器端脚本语言,除非使用ajax进行数据提交否则,一但服务端生成好页面传到浏览器端后就不再参与浏览器端的“运算”,所以你想在同一个页面中不重新进行请求就js和php相互获取值是不现实的。
创新互联公司专注于企业营销型网站建设、网站重做改版、丰南网站定制设计、自适应品牌网站建设、H5页面制作、商城建设、集团公司官网建设、成都外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为丰南等各大城市提供网站开发制作服务。
另:
你的代码分析如下:
script
var linka;
linka=window.location.href;
/script
?php
$ch[0]="scriptdocument.write(linka);/script";
echo $ch[0]."br /";
script
到这步为止,php获得js的变量非常顺利
下面接着
script
var k;
k="?php echo $ch[0];?";
alert(k);
/script
其实你的整个页面都是php的,执行
$ch[0]="scriptdocument.write(linka);/script";
这一句的时候,php的$ch[0]仅仅只是被赋予了"scriptdocument.write(linka);/script"这个字符串,js代码并没有运行.php也并没有获得js的变量!获得的只是字符串而已.
只要将json数据用引号引起来作为字符串传递给PHP【通常用ajax进行】就可以用json_decode函数解码了。没错!就是这样!但是在构造json字符串的时候一定要仔细,如果你不经常构造json字符串,那么不妨用
echo json_encode(array('k'=array("a"='1','2','3')))
这样的方式,查看你需要构造的目标字符串的json格式。这样你就可以在js中根据你想要的结果来构造了!
不用AJAX,最简单就是传个参数过去
如:function saveGame(str){
window.location.href='url?str=' + str;
}
楼上的是一种跳转的方式。如果你想不刷新处理,获取数据。还是用ajax 。很简单的。给你个例子。这里我我用jquery的$.post
$.post(URL,{参数1:alue,参数2:value2},function(data){
//这里你可以处理获取的数据。我使用是json 格式。你也可以使用其它格式。或者为空,让它自己判断得了
},'json');
这种方法就是ajax数据传输,异步数据交互
//这里用到了jquery的插件,使用前需引用jquery.js
script
function keyUp(e) {
var currKey=0,e=e||event;
currKey=e.keyCode||e.which||e.charCode;
//如果是空格
if(currKey == 32){
$.ajax({
url: 'save.php',
data: $('#id').val()
success: function(data){
alert(data);
}
});
}
}
document.onkeyup = keyUp;
/script
具体代码请谷歌 AJAX
1:HTML中的值如何传到JS,下面假设是文件1.php
代码如下:
html
body
form action="1.php" method="post"
name:input type="text" name="username" id="username"
rename:input type="text" name="username1" id="username1"
input type="button" value="submit" on CliCk="get()"
/form
/body
/html
JS假如想取文本框中用户输入的name值,这样写
代码如下:
script language='JavaScript'
function get()
{
var n=document.getElementById('username').value;
alert (n);
}/script
这样的话在有调用JS get()时就会弹出警示框,里面的内容就是name的值。
2:假如说JS中的这个取到的name值要传回rename的文本框中,这样写
代码如下:
script language='JavaScript'
function get()
{
var n=document.getElementById('username').value;
document.getElementById("username1").value=n;
}/script
这样的话在下面调用get()就会自动显示上面name输入的值。
3:PHP中取页面的值
代码如下:
?php
$name=$_REQUEST["username"];
echo $name;
?
4:PHP的值传回页面
在HTML中插入PHP语言,可以调用PHP中变量的值,也可用Smarty(推荐)。
有了以上这些,不管是HTML页面里的值还是JS中变量的值,都可以轻松的传入PHP,当然,PHP的值也可传到想要的地方。