當我們在一個 PHP 介面上填寫表單並點擊「提交」時,表單通常會被清空,以便我們填寫新的表單資料。有時,我們希望在點擊提交按鈕後,表單文字方塊中的資料不會被清空。在這篇文章中,我們將探討如何完成這個任務。
在 HTML 中,我們可以使用表單元素來建立表單,例如文字方塊、單選框、多重選取框等等。當我們點擊提交按鈕時,表單資料將會傳遞到伺服器端進行處理。 PHP 可以輕鬆處理這些表單數據,然後將結果傳回給使用者。
然而,如果我們想讓表單文字方塊不被清空,我們需要在提交按鈕上使用一些 JavaScript 程式碼。具體來說,我們需要使用 JavaScript 的 preventDefault() 方法來防止預設行為發生,然後使用 AJAX 將表單資料傳送到伺服器端進行處理。
為了示範如何實現這個過程,我們將建立一個簡單的 PHP 表單,該表單包含一個文字方塊和一個提交按鈕。當使用者點擊提交按鈕時,表單文字方塊中的資料將保留在頁面上。
首先,我們需要建立一個HTML 表單,包含一個文字方塊和一個提交按鈕:
<form id="myForm" method="post"> <input type="text" name="myInput" id="myInput"> <button type="submit" id="myButton">提交</button> </form>
請注意,我們在提交按鈕上使用了一個ID,這是為了方便後面的JavaScript 程式碼使用。
接下來,我們需要寫一些 JavaScript 程式碼來處理表單提交事件。具體來說,我們將使用 jQuery 來處理 AJAX 請求,以及 preventDefault() 方法來防止表單提交並保留表單文字方塊中的資料。
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> <script> // 阻止默认的表单提交事件 $('#myForm').submit(function(event) { event.preventDefault(); // 获取表单数据 var formData = { 'myInput': $('input[name=myInput]').val() }; // 发送 AJAX 请求 $.ajax({ type: 'POST', url: 'processForm.php', // 处理表单数据的 php 文件 data: formData }) .done(function(response) { // 请求成功处理 console.log(response); }) .fail(function(error) { // 请求失败处理 console.error(error); }); }); </script>
在這段程式碼中,我們使用了 $() 函數來取得表單元素並新增 submit 事件監聽。在事件中,我們使用 preventDefault() 方法來防止預設的表單提交事件。接下來,我們使用 $().val() 方法來取得表單數據,並將其儲存在 formData 物件中。最後,我們使用 $.ajax() 方法將表單資料傳送到伺服器端進行處理。
請根據您自己的需求替換上述程式碼中的 URL 和 PHP 檔案名稱。
最後,我們需要確保表單文字方塊中的資料不會在頁面刷新後被清空。我們可以使用 sessionStorage 或 localStorage 來儲存文字方塊中的值,並在頁面載入時從儲存中恢復它們。
<script> // 存储表单数据 $(document).ready(function() { var myInputValue = sessionStorage.getItem('my-input-value'); $('input[name=myInput]').val(myInputValue); }); // 存储表单数据并在提交时更新 $('#myForm').submit(function(event) { var myInputValue = $('input[name=myInput]').val(); sessionStorage.setItem('my-input-value', myInputValue); }); </script>
在上述程式碼中,我們在文件載入時使用 sessionStorage.getItem() 方法取得表單輸入框的值,並使用 $().val() 方法在文字方塊中設定值。在表單提交時,我們使用 $().val() 方法來取得文字方塊中的值,並使用 sessionStorage.setItem() 方法將其儲存在 sessionStorage 中。
這樣,我們就完成了表單文字方塊不清空的過程。當使用者填寫表單並點擊提交按鈕時,表單資料將會傳送到伺服器端進行處理,並且文字方塊中的值將會儲存在 sessionStorage 中以便下次使用。
以上是php怎麼實現點擊提交文字方塊不清空的詳細內容。更多資訊請關注PHP中文網其他相關文章!