【发布时间】:2010-09-22 00:58:51
【问题描述】:
我们可以传递任何信息吗?比如使用 javascript 在 html 页面之间传递一个字符串。没有表单,我使用的输入字段只是想在超链接中传递一些信息。
【问题讨论】:
标签: javascript html parameters
我们可以传递任何信息吗?比如使用 javascript 在 html 页面之间传递一个字符串。没有表单,我使用的输入字段只是想在超链接中传递一些信息。
【问题讨论】:
标签: javascript html parameters
你的用例是什么?
有很多方法可以做到这一点。说...
例如,
<input id="btnClickMe" onclick="btnClickMe_onClick()" type="button" />
...
<script type="text/javascript">
function btnClickMe_onClick() {
var data = "foo";
var urlOfNewPage = "http://www.test.com/testPage?data=" + data;
// Redirect user to the new URL
}
</script>
【讨论】:
通过表达“超链接中的信息”,我猜你想让用户通过点击它来发起通信。 这可能有效:
<a href="" id="mylink">Click here</a>
<script>
extra_data = "key1=value1&key2=value2";
document.getElementById("mylink").href = "http://example.com/?" + extra_data;
<script>
【讨论】:
是的。如果您需要做的只是传递一个短字符串,那么有很多简单的方法可以做到这一点。您可以在“#”之后的链接中包含一个字符串,并在下一页上通过 Javascript 读取该字符串(查看location.hash)。
如果不了解更多信息,很难缩小方法范围以满足您的需求。
简单例子:
one.html
...
<a href="two.html#this_is_data_could_also_be_encoded_json_string_too">Pass data</a>
...
两个.html
<script>
var passedData = location.hash.replace('#','');
alert('You passed this data: ' + passedData);
</script>
【讨论】: