用Ajax, PHP 跟 JS 最直接的交互方式就是 Ajax。
創(chuàng)新互聯(lián)建站專(zhuān)業(yè)為企業(yè)提供建湖網(wǎng)站建設(shè)、建湖做網(wǎng)站、建湖網(wǎng)站設(shè)計(jì)、建湖網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)與制作、建湖企業(yè)網(wǎng)站模板建站服務(wù),十載建湖做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
使用 Ajax 向服務(wù)器發(fā)起網(wǎng)絡(luò)請(qǐng)求,PHP在后端進(jìn)行處理并返回?cái)?shù)據(jù)。
JS向PHP傳遞數(shù)值只有兩種方法:GET和POST,GET把參數(shù)寫(xiě)在URL上,例如abc.php?param=123,POST的參數(shù)在數(shù)據(jù)里面。
JS調(diào)用PHP(無(wú)論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調(diào)用PHP(無(wú)論GET或者POST)的另外一種方式是是用AJAX,例子代碼網(wǎng)上很多,我寫(xiě)一個(gè)最簡(jiǎn)單的:
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數(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
具體代碼請(qǐng)谷歌?AJAX
1:HTML中的值如何傳到JS,下面假設(shè)是文件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假如想取文本框中用戶(hù)輸入的name值,這樣寫(xiě)
代碼如下:
script language='JavaScript'
function get()
{
var n=document.getElementById('username').value;
alert (n);
}/script
這樣的話在有調(diào)用JS get()時(shí)就會(huì)彈出警示框,里面的內(nèi)容就是name的值。
2:假如說(shuō)JS中的這個(gè)取到的name值要傳回rename的文本框中,這樣寫(xiě)
代碼如下:
script language='JavaScript'
function get()
{
var n=document.getElementById('username').value;
document.getElementById("username1").value=n;
}/script
這樣的話在下面調(diào)用get()就會(huì)自動(dòng)顯示上面name輸入的值。
3:PHP中取頁(yè)面的值
代碼如下:
?php
$name=$_REQUEST["username"];
echo $name;
?
4:PHP的值傳回頁(yè)面
在HTML中插入PHP語(yǔ)言,可以調(diào)用PHP中變量的值,也可用Smarty(推薦)。
有了以上這些,不管是HTML頁(yè)面里的值還是JS中變量的值,都可以輕松的傳入PHP,當(dāng)然,PHP的值也可傳到想要的地方。