我有一个简单的JS函数,允许用户输入他们的名字和姓氏,onclick
显示他们的全名。
当用户将页面保存为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 :(得分:1)
最简单的解决方法是,如果用户将文本输入input
元素,然后在提交之前将页面打印为PDF(Menubar > File > Print > Save as PDF
等),则其内容将包含在结果PDF文件。那会有帮助吗?
否则,您可以在click
的{{1}}上编写要执行的函数,并首先使该函数preventDefault
(阻止它重新加载页面并清除表单字段,如果是button
),然后让它将自己的名字写入变量并提示他们保存页面:
type="submit"
此外,您可以尝试将您的按钮包裹在<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
元素中,并将该元素area
设置为您网页的网址,并在该元素中添加download
attribute 。这不是我可以在通用在线沙箱中轻松演示的内容,而是href
属性:
...表示作者打算使用超链接来下载资源。
基本上,它使浏览器下载链接位置,而不是将浏览器导航到链接位置。
如果您无法根据自己的喜好将download
或其button
或a
文本包裹起来,则可以创建,设置样式并编写{{1}脚本看起来像area
,并将div
包裹在button
或div
中。