$.ajax({type:?"",url:?"",data:?"",?dataType:?"json",success:?function?(data)?{
黃驊ssl適用于網(wǎng)站、小程序/APP、API接口等需要進行數(shù)據(jù)傳輸應用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯(lián)建站的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18982081108(備注:SSL證書合作)期待與您的合作!
//這里處理返回的結果
//type為數(shù)據(jù)提交的方式post或者get
//data表示要提交的數(shù)據(jù)?方式為?{name1:value1,name2:value2.....等等}
//dataType表示數(shù)據(jù)處理后返回的數(shù)據(jù)類型?一般返回json的數(shù)據(jù)類型?使用$.each進行循環(huán)操作
//success表示數(shù)據(jù)請求成功后執(zhí)行的動作
}});
js僅在 瀏覽器中運行.
php 僅在服務器端運行.
2者交互, 通常通過 http get/post 協(xié)議進行交互.
因此, 要將 js 變量傳輸?shù)?php, 需通過 get/post 將參數(shù)傳入.
譬如:
script
function test(){
var x="abc";
$.ajax("test.php?x="+x);
}
/script
而 test.php 中, 通過 $_REQUEST["x"] 即可拿到js 請求過來的變量.
追問
感覺你的答案最符合我的需求,只是我還是碰到了問題。
test.php文件中
onchange事件觸發(fā)test()函數(shù),并將賦值。
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
這種方法就是ajax數(shù)據(jù)傳輸,異步數(shù)據(jù)交互
//這里用到了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
JS向PHP傳遞數(shù)值只有兩種方法:GET和POST,GET把參數(shù)寫在URL上,例如abc.php?param=123,POST的參數(shù)在數(shù)據(jù)里面。
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,例子代碼網(wǎng)上很多,我寫一個最簡單的:
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