新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
js仅在 浏览器中运行.
成都创新互联是一家朝气蓬勃的网站建设公司。公司专注于为企业提供信息化建设解决方案。从事网站开发,网站制作,网站设计,网站模板,微信公众号开发,软件开发,微信小程序开发,十多年建站对花箱等多个领域,拥有丰富的网站推广经验。
php 仅在服务器端运行.
2者交互, 通常通过 http get/post 协议进行交互.
因此, 要将 js 变量传输到 php, 需通过 get/post 将参数传入.
譬如:
script
function test(){
var x="abc";
$.ajax("test.php?x="+x);
}
/script
而 test.php 中, 通过 $_REQUEST["x"] 即可拿到js 请求过来的变量.
追问
感觉你的答案最符合我的需求,只是我还是碰到了问题。
test.php文件中
onchange事件触发test()函数,并将赋值。
script
function test(){
var x="abc";
$.ajax("test.php?x="+x);
}
test.php文件中
echo $_REQUEST["x"]并未获取到有效值。echo没有输出。
请问,这到底是什么原因。
追答
是因为 script 中并没有输出由 php 传回的结果.
改成这个试试看.
1
2
3
4
5
6
script
function test(){
var x="abc";
$.ajax("test.php?x="+x),null,function(data){alert(data)});
}
/script
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的值也可传到想要的地方。
JS向PHP传递数值只有两种方法:GET和POST,GET把参数写在URL上,例如abc.php?param=123,POST的参数在数据里面。
JS调用PHP(无论GET或者POST)一般有两种方式,一是是用HTML窗口,使用GET的例子:
iframe src=abc.php?param=123/iframe
使用POST的例子:
form action=abc.php method=post name=form1
input type=hidden name=param value=123
/form
script language=javascript
form1.param.value=123;
form1.submit();
/script
JS调用PHP(无论GET或者POST)的另外一种方式是是用AJAX,例子代码网上很多,我写一个最简单的:
script language=javascript
var xmlHttp=null;
if (window.ActiveXObject) xmlHttp=new ActiveXObject('Microsoft.XMLHTTP');
else if (window.XMLHttpRequest) xmlHttp=new XMLHttpRequest();
xmlHttp.onreadystatechange=handleStateChange;
xmlHttp.open('POST','abc.php');
xmlHttp.send('param=123');
function handleStateChange(){
if (xmlHttp.readyState==4){
if (xmlHttp.status==200){
alert(xmlHttp.responseText);
}
}
}
/script
用Ajax, PHP 跟 JS 最直接的交互方式就是 Ajax。
使用 Ajax 向服务器发起网络请求,PHP在后端进行处理并返回数据。
这种方法就是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 js的location 或 document 的url传值
方法2 js的submit提交
方法3 js的ajax
数据可以是简单的字符串 也可以是 json格式或 xml等