我在頁面上有服裝訂購表單。當我從下拉列表/菜單中選擇一個選項時,我想要將另一個窗體「換出」。 Ajax可能嗎? PHP include()?下拉菜單中的選項將選擇已經創建爲另一個目錄中模板的不同表單,並將其替換爲其他表單。更改爲下拉菜單選項上的不同表格
我只想一次顯示一個表單。謝謝! :)
我在頁面上有服裝訂購表單。當我從下拉列表/菜單中選擇一個選項時,我想要將另一個窗體「換出」。 Ajax可能嗎? PHP include()?下拉菜單中的選項將選擇已經創建爲另一個目錄中模板的不同表單,並將其替換爲其他表單。更改爲下拉菜單選項上的不同表格
我只想一次顯示一個表單。謝謝! :)
如果可以的話,不要放太多隱藏表格。這只是糟糕的設計,特別是在性能方面。最好的辦法是:
如果您喜歡在餡起來的東西一個文件嘗試通過一個獨特的參數與AJAX的PHP文件和檢查其值,以決定加載哪個表格。
例:
var xhr = new XMLhttpRequest();
formID = (condition) ? 1 : 2; // etc
//^^ This one line above means:
if (condition) {
formID = 1;
}
else {
formID = 2;
}
...
// GET request
xhr.open("GET", "forms.php?formID=" + formID);
// POST request
xhr.send("formID=" + formID);
在PHP:
<?php
if (isset($_POST["formID"]) && $_POST["formID"] === 1):
?>
<form id = "1"></form>
<?php
else:
?>
<form id = "2"></form>
<?php
endif;
?>
[編輯]:
如果要在不同的文件中的每個形式則以上代碼將爲:
<form>...</form> // No PHP necessary
在JavaScript中使用xhttp.send("")
沒有把任何值(只有當形式在不同的文件)。
我是一個初學者,所以你的代碼對我來說有點模糊。你是說我可以爲每個表單創建一個模板並使用AJAX將任何選定的模板渲染到頁面上?確切地說,是 – Bigfootbud
。像我一樣,創建兩個表單並將它們放在'if語句'中,以便PHP決定要呈現哪一個表單。 PHP將根據您通過AJAX請求發送給它的數據決定要渲染哪一個。它可以是任何東西,但爲了簡單起見,我使用了數字「1」和「2」。 –
另外,如果你還不知道,'isset()'檢查是否存在。因此,如果isset($ _ POST [「formID」])檢查PHP是否從AJAX收到數據。然後我們檢查它的值以決定顯示哪個表單。 –
我的幫助:http://stackoverflow.com/questions/3675006/how-to-switch-choose-between-html-forms – AkshayP
@AshkayP謝謝,我看到一個正在測試它,但會那樣爲20個表單工作? 50表格?我們有很多風格。在一頁上隱藏多個表單是否存在問題? – Bigfootbud