2017-06-03 86 views
0

我知道PHP運行在服務器上,而JS運行在客戶端執行PHP代碼,但我也知道這是可能的輸入驗證過程中要做到這一點:使用JavaScript的confirm方法

<?php 
echo "<script type=\"text/javascript\">window.alert('Please enter a valid number.'); 
window.location.href = '/index.html';</script>"; 
exit; 
?> 

所以我不知道,是否有可能使用Javascript確認方法在按鈕單擊上執行類似操作:

<?php 
    echo "<script type=\"text/javascript\">var q = confirm('Are you sure you want to exit?.'); 
    //if q == true { //ok is clicked 
     window.location.href = '/page_x.php'; 
    } else { //cancel is clicked 
     window.location.href = '/index.php';</script>"; 
    exit; 
    ?> 

我對Javascript的瞭解不多。我只是想要一個簡單的方法來執行按鈕點擊PHP代碼,但使用Javascript確認對話框。當點擊該按鈕時,它詢問用戶他們是否希望繼續(或某物)。如果他們點擊確定,他們被帶到一些PHP頁面。如果他們點擊取消,沒有任何反應,對話框就會退出。

我已經搜索了一個解決方案的網絡(即使在StackOverFlow),每個人都指向Ajax或JQuery,我也不知道如何使用。

所以我在考慮使用像我上面發佈的僞代碼一樣簡單的東西,但我不知道這樣做是否合法,即使它是,我也不知道如何。

任何幫助將不勝感激。

+3

從技術上講,您發佈的內容沒有任何問題。你需要了解什麼? –

+0

我編輯了帖子以反映我的問題 – Valkay

+0

難道你沒有通過在網頁上輸入應對並測試它而不是在這裏輸入代碼來更快(更權威地)得到答案? – symcbean

回答

0

首先,確認是一個JS函數,所以你只能在JS級別對待它。如果您確認後願意從JS執行任何PHP,則需要進行AJAX調用。

雖然,您在該答案中編寫的所有內容在技術層面都是正確的。

echo " 
<script type=\"text/javascript\"> 
var q = confirm('Are you sure you want to exit?.'); 
    if q == true 
     window.location.href = '/page_x.php'; //THIS IS JAVASCRIPT so it is fine 
    else 
     window.location.href = '/index.php'; //THIS IS JAVASCRIPT so it is fine 
</script>"; 
+0

您可以請我解釋一下,當點擊Javascript Ok按鈕時,如何進行AJAX調用來運行PHP函數?我之前沒有使用過AJAX,其他人似乎都很瞭解它,因此很難找到任何可以很好地解釋傻瓜的地方。 – Valkay

+0

@Valkay到目前爲止,製作ajax調用最簡單的方法是包含jQuery並使用它的簡單函數。例如,如果你只想得到一個PHP腳本的結果,你應該這樣做:$ .get(「something.php」,function(data){//對這裏的數據做一些事情(數據是srcipt的輸出) }); 不要害怕包含jQuery - 這與將在您的頁面開始 –