>백엔드 개발 >PHP 튜토리얼 >php 怎么获取JS的值 ,新手折腾几天了 还请大侠赐教

php 怎么获取JS的值 ,新手折腾几天了 还请大侠赐教

WBOY
WBOY원래의
2016-06-13 11:11:341105검색

php 如何获取JS的值 ,新手折腾几天了 还请大侠赐教!
请问以下代码如何修改才能得到 $key 值 

<br /><script type="text/javascript"><br />	TOP.api('rest', 'get', {<br />		//method:'taobao.taobaoke.items.convert',<br />		method : 'taobao.taobaoke.widget.items.convert',<br />		num_iids : '<?=$id?>',<br />		fields : 'num_iid,click_url,commission_rate'<br />	}, function(resp) {<br />		if(resp.error_response) {<br />			alert('taobao.taobaoke.widget.items.convert接口获取商信息品失败!' + resp.error_response.msg);<br />			return false;<br />		}<br /> <br />		var respItem = resp.taobaoke_items.taobaoke_item;<br />		for(var i = 0; i < respItem.length; i++) {<br />			abc=respItem[i].num_iid;<br />		}<br />	})<br /></script><br /><?<br />$key="<script>document.write(abc);</script>";<br />echo $key;  //请问大侠们如何修改这里才能得到值 感激不尽!<br />?>



------解决方案--------------------
没可能。PHP是服务器端语言,JS是浏览器端语言。apache先执行PHP代码,解析成HTML代码后下载到用户的浏览器,浏览器再执行JS语言进一步渲染。所以当你的代码运行先运行PHP,再运行TOP.api,等执行到<script>document.write(abc);</script>时,已经从apache断开。
------解决方案--------------------
楼上是正确的, 使用 AJAX 吧!!!
------解决方案--------------------
<br /><script type="text/javascript"><br />    TOP.api('rest', 'get', {<br />        //method:'taobao.taobaoke.items.convert',<br />        method : 'taobao.taobaoke.widget.items.convert',<br />        num_iids : '<?=$id?>',<br />        fields : 'num_iid,click_url,commission_rate'<br />    }, function(resp) {<br />        if(resp.error_response) {<br />            alert('taobao.taobaoke.widget.items.convert接口获取商信息品失败!' + resp.error_response.msg);<br />            return false;<br />        }<br />  <br />        var respItem = resp.taobaoke_items.taobaoke_item;<br />        for(var i = 0; i < respItem.length; i++) {<br />            abc=respItem[i].num_iid;<br />        }<br />        $.post('',{abc:abc},function(data){})//这里添加ajax请求<br />    })<br /></script><br /><?<br />if(isset($_POST['abc']))<br />{<br />    $abc = $_POST['abc'];<br />    echo $abc;<br />}<br />?><br />

楼主可以根据ajax的这种方法来修改您自己的代码
------解决方案--------------------
其实,从客户端通过js取得数据,是可以通过某个事件驱动提交的,1种是ajax,另一种是在满足一定条件的时候触发提交,比如通过setTimeout,满足一定条件,触发submit提交。总之,能完成lz的需要。
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.