如何使用Javascript从URL参数中自动填充文本字段
How do I auto-populate a text field from URL Parameter using Javascript
本页(http://forums.iis.net/t/1153336.aspx)解释了如何准确地做我想做的事情,但由于我们系统的限制,我只能输入javascript将这些信息拉到文本框中。有人能解释一下我如何使用URL中的参数来自动填充文本框吗?
您可以使用location.search
访问url查询并将其注入到您的文本值中
如果您的url是/page.htm?x=y
,则可以使用以下代码设置文本字段的值。这篇文章告诉您如何从查询字符串中获取值
// See the link above for getUrlParams
var params = getUrlParams();
document.getElementById('myTextFieldId').value = params.x;
请注意,您链接到的示例受到http://en.wikipedia.org/wiki/Cross-site_scripting弱点为了避免这种情况,在将HTML输出到屏幕
您应该能够在js 中使用windows.location执行类似的操作
http://css-tricks.com/snippets/javascript/get-url-and-url-parts-in-javascript/
您可以很容易地使用这个问题的答案来使用JavaScript从URL获取参数。然后像这样设置文本框的值:
this.form.elements["element_name"].value = 'Some Value';
如果你想要一个快速的解决方案,你可能有兴趣使用这个代码片段(灵感来自这里,但我自己修改了):
function getURLParameter(e) {
return decodeURI((new RegExp(e + "=(.+?)(&|$)").exec(location.search) || [, ""])[1]);
}
if (getURLParameter("inputKey") === "") {
console.log("No URL param value found.");
} else {
document.getElementById("inputBox").value = getURLParameter("inputkey");
}
假设你的url是example.com?inputKey=hello world
。如果是这样,使用上面的代码将在输入中填充ID为"inputBox"的短语"Hello world"。如果URL只是example.com
,它不会预先填充框,而是表现得好像什么都没有(显示占位符等)。
相关文章:
- 使用JSON文件中的变量(字符串)填充文本区域
- JavaScript在其他页面上用html内容填充文本框
- 如何制作每次填充文本框时都会填充的进度条
- 使用两个下拉列表的值填充文本框
- 编辑后无法用Javascript填充文本框
- HTML5使用Javascript填充文本标记的有效方式
- 填充文本框取决于php中的下拉选择
- html5具有特定alpha的画布填充文本和具有不同alpha的背景
- 如何从选定的组合框中填充文本框
- 点击剑道网格的编辑,在剑道窗口中填充文本框/DDL
- 有没有一种方法可以用包含ENTER键换行符的SQL数据填充文本区域表单
- 从下拉框中获取选定的值,并使用来填充文本框php javascript
- 使用带有数据库信息的下拉菜单填充文本框
- 使用php创建的下拉列表中的选择单独填充文本区域
- 使用JavaScript返回click-li项目的值,并用结果填充文本区域
- 用数字而不是文本填充文本框值
- 使用表单按钮填充文本输入
- 在模式窗口中填充文本区域
- 填充文本不起作用
- 我正在用来自选择的数据填充文本框,它可以工作,但是