2011-10-12 27 views
0

我來自asp.net,在asp.net中,您有按下按鈕時觸發的onclick事件。在這種情況下,您可以編寫您想要的代碼執行...在php中創建事件並傳遞變量

但PHP沒有這樣的機制......

最新最好的做法啓動鏈路,並通過它的URL變量..

難道我把onclick中的javascript函數將爲我完成工作(轉到s erver並執行代碼..

<script type="text/javascript> 
    function Javascript() 
    { 
    //what do you do here..how can you make the javascript go back to ther server.. 
    // or initialize a link say.. http://home.com?newVariable=2 
    } 
</script> 
+6

onclick純粹是客戶端的事情,PHP是純粹的服務器端。我不會抱怨蘋果不支持橘子。當你正確地理解它時,ASP本身也沒有onclick。它只是自動生成一些JS讓你看起來像它一樣。 –

+0

你可以使用onclick調用一個函數來執行一個PHP文件的Ajax POST,並從服務器中檢索一些新的數據......(但都取決於你想做什麼) – Zuul

+0

我該如何達到類似的效果。我想按鈕按下來發送我到服務器或重定向到相同的URL來傳遞一些變量..我希望用戶按下一個按鈕,我希望按鈕將他交付到相同或不同的頁面 – Matrix001

回答

0

據我瞭解:

你需要使用AJAX使您的事件onclick與服務器(您的file.php)通信。

的最簡單的方法是使用jQuery函數。點擊和阿賈克斯:

$('#myButton').click(function(){ 
    $.ajax({ 
     type: "POST", 
     url: "file.php" 
     data: "newVariable = 2" 
     success: function (msg) { 
      alert("Data Saved:" + msg); 
     } 
    }) 
}); 

在file.php:

<?php 
    $newVariable = $_POST['newVariable']; //$newVariable = 2 
?> 
+1

感謝您的代碼。我很高興我問了這個問題 – Matrix001

+0

在使用上面例子中的代碼之前,請確保你包含了jQuery庫。 – Jasper

1

如果你想要把查詢字符串變量在這裏你的JavaScript代碼是一個例子:

<script type="text/javascript> 
document.getElementById('some_link_id').addEventListener('click', function() { 
    window.location = 'http://home.com?newVariable=<?php echo $_GET['newVariable']; ?>'; 
}, false); 
</script> 
+0

哇..感謝..不像asp.net自動:( – Matrix001

+1

看看光明的一面,現在你可以學習更多關於JavaScript事件處理:) – Jasper

+0

urlencode缺失。 – hakre