【问题标题】:Take form data passed via url and populate a new form获取通过 url 传递的表单数据并填充新表单
【发布时间】:2012-09-27 09:18:47
【问题描述】:

我的付款处理器将 url 中的一些表单字段传递给我的会员网站注册表单...名字、姓氏和电子邮件。

我想使用电子邮件值自动填充注册表单中的用户名字段。

<input type="text" value="" size="10" name="username" class="fld">
<input type="text" value="" size="15" name="firstname" class="fld">
<input type="text" value="" size="15" name="lastname" class="fld">
<input type="email" value="" size="25" name="email" class="fld">
<input type="password" size="10" name="password1" class="fld">

我还希望将用户名、名字、姓氏和电子邮件作为隐藏字段传递,并将它们的值显示为文本...所以提交表单时这三个字段不能更改。

我还想知道,当支付处理器通过 url 将数据发送到注册表单时,是否有办法强制提交表单?

这样用户就不必停下来填写注册表单,因为我可以通过支付处理器收集所有数据,包括密码。

jquery 是不是最好的方法...以及如何?

输入字段的表单是什么样的:

我想要什么:

这是注册表单的部分代码。

    <table cellspacing="0" cellpadding="0" class="wpm_registration ui-sortable">
    <tbody>
        <tr class="li_fld systemFld required">
                <td class="label">Username:</td>
                <td class="fld_div">
                        <input type="text" value="" size="10" name="username" class="fld">
                        <div class="desc"></div>
                </td>
        </tr>
        <tr class="li_fld required wp_field">
                <td class="label">First Name:</td>
                <td class="fld_div">
                        <input type="text" value="" size="15" name="firstname" class="fld">
                        <div class="desc"></div>
                </td>
        </tr>
        <tr class="li_fld required wp_field">
                <td class="label">Last Name:</td>
                <td class="fld_div">
                        <input type="text" value="" size="15" name="lastname" class="fld">
                        <div class="desc"></div>
                </td>
        </tr>
        <tr class="li_fld systemFld">
                <td class="label">E-mail:</td>
                <td class="fld_div">
                        <input type="email" value="" size="25" name="email" class="fld">
                        <div class="desc"></div>
                </td>
        </tr>
        <tr class="li_fld systemFld">
                <td class="label">Password (twice):</td>
                <td class="fld_div">
                        <input type="password" size="10" name="password1" class="fld"><br>
                        <input type="password" size="10" name="password2" class="fld">
                        <div class="desc">Password has to be at least 8 characters long<br>and must not contain spaces</div>
                </td>
        </tr>
        <tr class="li_submit">
                <td class="label">&nbsp;</td>
                <td class="fld_div form_button">
                        <input type="submit" value="Submit Registration" class="fld button">
                </td>
        </tr>
    </tbody>
    </table>

【问题讨论】:

    标签: jquery forms


    【解决方案1】:

    使用 jQuery,尝试检查信息是否已经在输入中。如果是这种情况,请将输入替换为它的值:

    $(function() {
         $('input.fld').each(function() {
             if($(this).val() != '') {
                 var val = $(this).val();
                 $(this).parent().text(val);
             }
         });
    });
    

    就是这样!

    【讨论】:

      猜你喜欢
      • 2012-03-26
      • 2019-11-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多