大家好,这可能是一个愚蠢的问题,但如果我打开一个包含文本框的html页面,是否可以将该文本框的值移动到另一个页面上,点击一个按钮?
所以“page1.html”有一个名为“TextboxName”的文本框,名称为“John”的用户类型,单击按钮,然后该页面关闭,“John”移动到“page2.html”上的文本框< / p>
提前感谢任何帮助,这个问题确实困扰了我!
答案 0 :(得分:1)
尝试以下代码:
Page1.html:
<html>
<form type=get action="page2.html">
<table>
<tr>
<td>First Name:</td>
<td><input type=text name=firstname size=10></td>
</tr>
<tr>
<td>Last Name:</td>
<td><input type=text name=lastname size=10></td>
</tr>
<tr>
<td>Age:</td>
<td><input type=text name=age size=10></td>
</tr>
<tr>
<td colspan=2><input type=submit value="Submit">
</td>
</tr>
</table>
</form>
</html>
Page2.html:
<html>
<script LANGUAGE="JavaScript">
function getParams(){
var idx = document.URL.indexOf('?');
var params = new Array();
if (idx != -1) {
var pairs = document.URL.substring(idx+1, document.URL.length).split('&');
for (var i=0; i<pairs.length; i++){
nameVal = pairs[i].split('=');
params[nameVal[0]] = nameVal[1];
}
}
return params;
}
params = getParams();
firstname = unescape(params["firstname"]);
lastname = unescape(params["lastname"]);
age = unescape(params["age"]);
document.write("firstname = " + firstname + "<br>");
document.write("lastname = " + lastname + "<br>");
document.write("age = " + age + "<br>");
</script>
</html>
答案 1 :(得分:0)
这可以做到,但它需要的不仅仅是普通的HTML。 Javascript或PHP可以很容易地完成这样的功能。
请参阅:How to pass variables from one php page to another without form?
或尝试使用javascript + AJAX:http://www.w3schools.com/ajax/ajax_intro.asp
和:http://www.javascripter.net/faq/passingp.htm
您还可以将信息存储在Cookie中并以这种方式访问:http://www.javascripter.net/faq/cookies.htm
或只使用angular:http://docs.angularjs.org/guide/databinding
答案 2 :(得分:0)
在page1.html上执行:
function onClickHandler(){
location.href = 'page2.html?name=' + document.getElementById('TextBoxName').value;
}
然后在page2.html上执行:
function parseQueryString()
{
var queryDict = {}
location.search.substr(1).split("&").forEach(function(item) {
queryDict[item.split("=")[0]] = item.split("=")[1]
});
return queryDict;
}
function onLoadHandler(){
document.getElementById('TextBoxName').value = parseQueryString().name;
}
答案 3 :(得分:0)
这取决于您希望在项目中投入多少精力和工作。
通过querystrings可以实现一个简单但不安全的解决方案。您可以通过HTTP-GET
从A传递给任何参数。
另一种可能性是通过HTTP-Post
(See Specification)。
然后它取决于您使用的是哪个后端。后端从A接收数据并将其呈现给B.