【问题标题】:Initializing the input field with URL query sting使用 URL 查询字符串初始化输入字段
【发布时间】:2017-09-14 21:12:17
【问题描述】:

我有一个输入字段需要用 URL 查询字符串填充,页面名称是“track”。

输入代码:

<div class="page-width">
<h1 class="small--text-center">{{ page.title }}</h1>

<input type="text" id="trackid" name="tracking" placeholder="Tracking ID">

<button type="button" onClick="changeChannel();">Locate My Item</button>

网址是: mysite.com/pages/track?trackid=123

我该怎么做?

【问题讨论】:

  • 请让您的要求更清楚。是否要使用 url 查询字符串的值来初始化输入字段?

标签: javascript html forms url


【解决方案1】:

如果我理解你的意思,你的代码应该是这样的:

<div class="page-width">
<h1 class="small--text-center">{{ page.title }}</h1>

<input type="text" id="trackid" name="tracking" placeholder="Tracking ID">

<button type="button" onClick="changeChannel();">Locate My Item</button>

<script>
function getParameterByName(name, url) {
    if (!url) url = window.location.href;
    name = name.replace(/[\[\]]/g, "\\$&");
    var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"),
        results = regex.exec(url);
    if (!results) return null;
    if (!results[2]) return '';
    return decodeURIComponent(results[2].replace(/\+/g, " "));
}
var name = 'trackid'; // if your url is mysite.com/pages/track?trackid=123
var url = window.location.href;
document.getElementById("trackid").value = getParameterByName(name, url);
</script>

此代码将使用 url 查询字符串中的 trackId 值初始化输入字段。

【讨论】:

  • “批准编辑”?对不起,这里是新人,所以不确定这意味着什么。我将您的回复标记为答案。
  • 我编辑了您的问题以使其更清晰,您应该批准可以应用的编辑。我想你可以在页面右上角找到编辑通知。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-11-29
  • 2016-07-27
  • 2011-03-20
  • 1970-01-01
  • 2021-05-10
  • 2011-07-22
相关资源
最近更新 更多