2014-07-20 74 views
1

我有一個簡單的JS函數,可以讓用戶輸入他們的名字和姓氏,onclick顯示他們的全名。將頁面保存爲html以及內容

當用戶將頁面保存爲html並重新打開時,是否有方法將用戶提交的內容包含在文本字段中?

function getFullName() { 

    var firstName, lastName, fullName; 

    firstName = document.Application.txtFirstName.value; 
    lastName = document.Application.txtLastName.value; 
    fullName = firstName + " " + lastName; 
    document.Application.txtFullName.value = fullName; 
} 
+0

我懷疑這是可能的,除非你手動編輯保存的HTML。 – sarbbottam

+0

您能詳細闡述一下您希望發生什麼以及按什麼順序進行? – jtheletter

+0

@janaspage:用戶輸入他的名字(第一個和最後一個),並onclick他得到他的全名,然後他嘗試使用保存頁面作爲選項在瀏覽器中保存..他應該能夠在文本字段中查看他的名字當他重新打開保存的頁面時... – user3520756

回答

1

最簡單的解決方法是,如果用戶將文本輸入到一個input元素,然後-之前提交-打印頁到PDF(Menubar > File > Print > Save as PDF等),它們的內容被包括在所得到的PDF文件。這會有幫助嗎?

否則,你可以寫一個函數來在你的buttonclick執行,並有功能首先preventDefault(防止它重新加載頁面並清除表單字段,如果type="submit"),然後把它寫自己命名一個變量,並且促使他們保存頁面:

http://jsbin.com/yelun/1/edit

<form id="nameForm"> 
    First Name<br /> 
    <input type="text" name="first" /><br /> 
    <br /> 
    Last Name<br /> 
    <input type="text" name="last" /><br /> 
    <br /> 
    <button type="submit" onclick="processForm(event)">Submit</button> 
</form> 

var processForm = function(event) { 
    event.preventDefault(); 
    var form = document.getElementById('nameForm'); 
    var firstName = form.first.value; 
    var lastName = form.last.value; 
    var fullName = firstName + ' ' + lastName; 
    alert('Hello, ' + fullName + '. Please now save this page as HTML via your browser\'s `File` menu.'); 
}; 

此外,您可以嘗試a或包裹你的按鈕3210元素,將元素的href設置爲您網頁的網址,並將download attribute添加到該元素。這是不是我可以很容易地在通用在線演示沙盤,但download屬性:

...表明,筆者擬用於下載資源的超級鏈接。

實質上,它使瀏覽器下載鏈接的位置,而不是瀏覽器瀏覽到鏈接的位置。

如果你不能完成在aarea根據自己的喜好button或它的文本,您可以創建,樣式,腳本div看起來像一個button,幷包裹在一個aareadiv

+1

:與Firefox正常工作......但會找出鉻的東西...儘管 – user3520756

+0

請再試一次。我忘記了提出你的問題(抱歉...)。你現在應該有足夠的分數。 http://stackoverflow.com/help/privileges – jtheletter

+1

upvoted,並感謝你的投票太atleast現在我是一個合格的選民(: – user3520756