Javascript - 传递 URL/Hyperlink 参数来填充登录页面的输入字段

Javascript - Pass URL/Hyperlink parameters to fill input fields of loginpage

我想用 JavaScript 编写一个函数,以便能够通过 hyperlink 提前填写表单字段 - 从地址行传递参数(URL 参数)到表单字段。

URL: [...]/login.aspx?firstname=My&lastname=Test

点击 link 后,登录区域的两个输入字段现在应该已经预填了“我的”和“测试”。

头部:

    <script type="text/javaScript">
function getUrlParameter(par) {
    var value = '';
    var UrlParameter = window.location.search;

    if (UrlParameter != "") {
        var i = UrlParameter.indexOf(par + "=");
        if (i >= 0) {
            i = i + par.length + 1;
            var k = UrlParameter.indexOf("&", i);
            if (k < 0) {
                k = UrlParameter.length;
            }
            value = UrlParameter.substring(i, k);
            for (i = 0; i < value.length; i++) {
                if (value.charAt(i) == '+') {
                    value = value.substring(0, i) + " " + value.substring(i + 1, value.length);
                }
            }
            value = unescape(value);
        }
    }
    else {
        document.write("error");
    }
    return value;
}

function init() {
    var firstname= getUrlParameter("firstname");
    document.Kontakt.Firstname.value = firstname;

    var lastname= getUrlParameter("lastname");
    document.Kontakt.Lastname.value = lastname;
}

正文部分

<body onload="init()">

<form id="frmStartseiteMaster" name="Kontakt" runat="server" class="ym-form ym-full ym-form-login ie_display" autocomplete="off" data-alert="">

<input type="text" name="Firstname" id="Firstname" />
<input type="text" name="Lastname" id="Lastname" />

显示的错误是:

未捕获的类型错误:无法读取未定义的 属性 'Firstname'

我已经在这个问题上坐了一段时间了,无法再进一步了。非常感谢您的帮助。

此致, 克丽丝

我会这样尝试:

> <html> <head> <meta charset="utf-8"> </head> <body>
> 
> <form id="frmStartseiteMaster" name="Kontakt" runat="server"
> class="ym-form ym-full ym-form-login ie_display" autocomplete="off"
> data-alert="">
> 
> <input type="text" name="Firstname" id="Firstname" /> <input
> type="text" name="Lastname" id="Lastname" />
> 
> <script type="text/javascript"> function getUrlParameter(par) {
>     var value = '';
>     var UrlParameter = window.location.search; console.log("url: " + UrlParameter);
>     if (UrlParameter != "") {
>         var i = UrlParameter.indexOf(par + "=");
>         if (i >= 0) {
>             i = i + par.length + 1;
>             var k = UrlParameter.indexOf("&", i);
>             if (k < 0) {
>                 k = UrlParameter.length;
>             }
>             value = UrlParameter.substring(i, k);
>             for (i = 0; i < value.length; i++) {
>                 if (value.charAt(i) == '+') {
>                     value = value.substring(0, i) + " " + value.substring(i + 1, value.length);
>                 }
>             }
>             value = unescape(value);
>         }
>     }
>     else {
>         document.write("error");
>     }
>     return value; }
> 
> function init() {
>     var firstname= getUrlParameter("firstname");
>     document.getElementById("frmStartseiteMaster").Firstname.value = firstname;
> 
>     var lastname= getUrlParameter("lastname");
>     document.getElementById("frmStartseiteMaster").Lastname.value = lastname; } window.onload=function() {  init(); } </script> </body>
> </html>

玩得开心