溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

js中如何將php解析成數(shù)據(jù)

發(fā)布時間:2021-07-28 10:26:16 來源:億速云 閱讀:196 作者:小新 欄目:web開發(fā)

這篇文章主要介紹js中如何將php解析成數(shù)據(jù),文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

一、總結

一句話總結:傳參數(shù)去后臺,用ajax,或者原生js方式拼接url。明白原理,洞悉系統(tǒng)是先解析php,再執(zhí)行html代碼和js代碼。

二、用ajax

1. 頁面提交數(shù)據(jù): ajax

2. php頁面獲取參數(shù): $val = $_POST['val']

參考代碼(jquery):

$.ajax({
type: 'POST',
url: 'save.php',
data: {val: text1obj.value}
success: function(msg){
// msg: php返回內容
/* alert(修改成功); */
window.location = window.location;
},
error:function(msg){
// 提交失敗
}
});

問題:

<SCRIPT LANGUAGE="JavaScript">
var bid=document.fenlei.bfenlei.value;
<?php
$sql1="select * from s_type where b_id='$bid'";
//.......
?>
</SCRIPT>

如上代碼,如何把document來的bid值傳遞到下面PHP語句的bid????

解答:

不用AJAX,最簡單就是傳個參數(shù)過去

如:

function saveGame(str){
window.location.href='url?str=' + str;
}

樓上的是一種跳轉的方式。如果你想不刷新處理,獲取數(shù)據(jù)。還是用ajax 。很簡單的。給你個例子。

這里我我用jquery的$.post

$.post(URL,{參數(shù)1:alue,參數(shù)2:value2},function(data){
//這里你可以處理獲取的數(shù)據(jù)。我使用是json 格式。你也可以使用其它格式。或者為空,讓它自己判斷得了
},'json');

一個是服務器端的,一個是客戶端的。

當然不行。

我不明白你為什么要用js來傳值。

你直接用url參數(shù)像這樣: test.php?bid=1 不行嗎?

用js來實現(xiàn)比較麻煩,因為你打開網(wǎng)頁是先執(zhí)行php后執(zhí)行js的。也就是說不管你js放在哪都是執(zhí)行完了php再執(zhí)行js。

如果你硬是要用js向php傳值這種方式的話那就要用到ajax,這要知道你的具體要求才行。

用AJAX 發(fā)送到后臺

proytype方法:

function changeshow()
{
var bid=document.fenlei.bfenlei.value;
var url = 'adm_mod_ajax.php';
var pars = 'mtype=1&mid=' + mid+'&bid='+bid;
var myAjax = new Ajax.Request(
url,
{method: 'post', parameters: pars, onComplete: showResponse}
);
}

三、洞悉系統(tǒng)是先解析php,再執(zhí)行其它代碼下的字符串拼接

這樣可以

<script> 
function dailyTask(){
$('#my_daily_task_calendar').datepicker().on('changeDate.datepicker.amui', function(event) {
var dailyTaskDate=$(this).val();
var url1="{:url('task/getDailyTaskData')}";
var url2='?dailyTaskDate='+dailyTaskDate;
 document.location=url1+url2;
});
}
dailyTask();
</script>

apache服務器在頁面載入的時候會先翻譯 7 var url2='?dailyTaskDate='+dailyTaskDate; 這句話。把php翻譯完了就交給瀏覽器。

這樣不行,因為php咸魚js執(zhí)行,所以js中的dailyTaskDate變量會找不到,所以php中報常量錯誤。

var dailyTaskDate=$(this).val();
document.location={:url('task/getDailyTaskData',array('dailyTaskDate'=>dailyTaskDate))};

四、ajax回調函數(shù)中刷新頁面方法

js中如何將php解析成數(shù)據(jù)

在做demo的時候回調函數(shù)不想很麻煩,只是單純的刷新下頁面就可以用location.reload(true); 這句話相當于F5鍵刷新頁面,這樣做的方法可能會耗費一定資源,但是刷新頁面還是很方便的。

下面代碼可以實現(xiàn)ajax刷新頁面,然而并沒有什么用

<script>
 function dailyTask(){
 $('#my_daily_task_calendar').datepicker().on('changeDate.datepicker.amui', function(event) {
 var dailyTaskDate=$(this).val();
$.post("task/getDailyTaskData", { dailyTaskDate:dailyTaskDate}, function () {
document.location.reload();
 });
 });
}
dailyTask();
</script>

以上是“js中如何將php解析成數(shù)據(jù)”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI