簡體   English   中英

如何在“onchange”事件被觸發時調用PHP函數?

[英]How to call a PHP function when “onchange” event is fired?

我有三個相同的下拉列表,我正在使用MySQL數據填充。 如果其中一個更改了索引(onchange被觸發),我希望其他兩個重新填充,以便它們排除使用另一個下拉列表選擇的項目。

在ASP.NET中,我只是在后面的代碼中調用一個函數(傳遞所選項的值)來重新填充其他兩個。

我一直在閑逛一段時間,我無法用PHP完成它。 PHP允許從此事件調用函數嗎? 我也試過使用AJAX,但沒有。

OnChange()是一個js函數,為了使用它來調用php函數,你必須使用AJAX。 使用ajax,您將能夠獲取php的代碼返回值,在頁面中顯示它,或者執行您想要的任何操作。

祝好運

您不能(直接)從客戶端調用服務器端功能。

您可以向運行調用該函數的服務器端腳本的URL發出HTTP請求。

ASP.NET(我相信,我從未使用過它)一些會設置URL並生成一些可以為你調用該URL的JavaScript。

PHP核心中沒有任何內容可以做到這一點。

關於如何做這樣的事情的一個非常粗糙,快速和骯臟的輪廓(不會試圖成為RESTful)將是:

 callFunction.php:
 <?php
     include("myFunctions.php");
     if ($_GET['call'] == "functionA") {
         functionA();
     }
 ?>

然后你的JS會向callFunction.php?call=functionA做一個ajax請求callFunction.php?call=functionA

當下拉列表發生更改時,ASP.NET本來會進行回發,盡管您不必明確地編寫它。

如果您想在PHP中往返服務器,則必須實現相同的邏輯(例如,在onchange事件中使用JavaScript發布表單)。

這也是使用AJAX的一個很好的情況,但是你還沒有提供你嘗試過的內容或出了什么問題的任何細節,因此很難進一步提供幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM