我有一個JavaScript表單,我使用innerHTML來設置一些文本。製作粘貼javascript
當表單提交的信息丟失。無論如何,我可以使它「粘」。我想一個餅乾,但這是我所知道的。
感謝
<form "action="" name="myform">
<input type="text" name='name">
<div id="theName"></div>
</form>
簡單的例子,我捕捉的名稱和需要的DIV顯示名稱表單提交後。
javascript
我有一個JavaScript表單,我使用innerHTML來設置一些文本。製作粘貼javascript
當表單提交的信息丟失。無論如何,我可以使它「粘」。我想一個餅乾,但這是我所知道的。
感謝
<form "action="" name="myform">
<input type="text" name='name">
<div id="theName"></div>
</form>
簡單的例子,我捕捉的名稱和需要的DIV顯示名稱表單提交後。
您是否將輸入標籤的「值」屬性設置爲某些內容或空白?你可以移除(去除屬性本身),以便使用最後一個值集合(只對非密碼類型的輸入纔是真實的,而且在所有瀏覽器中都沒有嘗試過)。或者更好的是,你可以使用諸如(PHP,ASP,RUBY等)的服務器端腳本來將屬性值設置爲先前提交的。
<form method="post">
<input type="text" name="txtinput" id="txtinput" value="<?php echo $_POST['txtinput']?>"/>
<input type="submit" value="submit">
</form>
只在js中執行它比你使用cookies更加複雜和不可靠。 PS:我假設你沒有使用XHR(AJAX)來提交你的表單,因爲XHR的不刷新頁面或重新初始化輸入,除非你告訴他們。
您需要以某種方式保存數據。有幾種選擇:
localStorage[key] = value
並使用localStorage[key]
檢索表單數據來存儲表單數據。使用HTML5的本地存儲爲您提供了一個自我封裝的方法,無需服務器端配置:
<form action="" name="myform">
<input type="text" name="name">
<div id="theName"></div>
</form>
<script type="text/javascript">
(function() {
var form = document.getElementsByName('myform')[0];
if (localStorage['name'] !== undefined) {
var displayArea = document.getElementById('theName');
displayArea.textContent = localStorage['name'];
}
form.addEventListener('submit', function() {
var nameField = document.getElementsByName('name')[0];
localStorage['name'] = nameField.value;
}, false);
})();
</script>
這應該發生的服務器端。 Javascript是爲了增強一個頁面,而不是依靠數據操作。
你的劇本,轉化爲PHP,看起來像
<form action="" method="post" name="myform">
<input type="text" name='name">
<div id="theName"><?php
if(isset($_POST['name'])) { echo $_POST['name']; }
?></div>
</form>
...它會工作每一次,而無需調用任何JS。
無論如何,您必須以某種方式處理表單數據 - 您打算如何在沒有服務器端腳本的情況下檢索數據?
你能提供一個例子嗎?聽起來像你需要服務器端的東西。 Javascript只是客戶端,所以客戶端瀏覽器必須每次都運行這個函數。 – Ben 2011-01-19 06:15:09