【问题标题】:Javascript autocomplete Form and append text in prefilled feildJavascript自动完成表单并在预填充字段中附加文本
【发布时间】:2013-09-25 07:45:39
【问题描述】:

我正在尝试创建一个表单,该表单将根据输入的名字和姓氏自动完成文本字段。例如:

如果姓氏是 : smith 如果名字是:约翰 电子邮件地址应自动填写为:smithj@abc.com 并且用户名应自动填写为:smithj。 我有完成用户名的以下代码,但我不知道如何完成电子邮件部分。

任何帮助将不胜感激。

<form method="post" name="form" action="">
<div><label for="lname">Last Name: </label><input type="text" name="lname" id="lname" /></div>

<div><label for="fname">First Name: </label><input type="text" name="fname" id="fname" onblur="
if(document.form.username.value=='' && document.form.lname.value!='' && document.form.lname.value!='') {
     var username = '';
     if(document.form.fname.value.length >= 4) {
          username = document.form.lname.value.substr(0,49) + document.form.fname.value.substr(0,1);
     } else {
          username = document.form.lname.value.substr(0,49) + document.form.fname.value.substr(0,4);
     }
     username = username.replace(/\s+/g, '');
     username = username.replace(/\'+/g, '');
     username = username.replace(/-+/g, '');
     username = username.toLowerCase();
     document.form.username.value = username; 

     }" /></div>


<div><label for="Email"> Email:      </label><input type="text" name="Email" /></div>
<div><label for="username">Username: </label><input type="text" name="username" id="username"/></div>
</form>

【问题讨论】:

  • 您的 JavaScript 代码不是真正可读的,您介意格式化它吗?对于您最初的问题:您只需将“@abc.com”附加到用户名字符串:var email = username + '@abc.com';

标签: javascript


【解决方案1】:

只是为了使它完整并带有答案;)将以下内容添加到您的脚本中,电子邮件将与用户名一起填写,假设您只想在未设置用户名时填写它:

if (document.form.email.value == '') {
    var email = username + '@abc.com';
    document.form.email.value = email;
}

【讨论】:

    猜你喜欢
    • 2011-02-01
    • 1970-01-01
    • 2017-04-28
    • 2012-02-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多