在提交之前,获取用户输入值并将其插入表单中的其他位置


Take a user input value and insert it somewhere else in the form before submission?

是否可以在提交之前获取一个输入值并将其插入表单中的其他位置?

<form action="<?php echo get_option('home'); ?>/wp-login.php" method="post" id="login-form">
    <p>Please login.</p>
        <input type="text" placeholder="Username" name="log" id="log" value="<?php echo wp_specialchars(stripslashes($user_login), 1) ?>" />
        <input type="password" placeholder="Password" name="pwd" id="pwd" />
    <p>
        <input name="rememberme" id="rememberme" type="checkbox" checked="checked" value="forever" /> Remember me
    </p>
    <input type="hidden" name="redirect_to" value="<?php echo $_SERVER['REQUEST_URI']; ?>/<?php echo $_POST['log']; ?>" />
    <p>
        <a href="<?php echo get_option('home'); ?>/wp-login.php?action=lostpassword">Recover password</a>
    </p>                                
    <input type="submit" name="submit" value="LOGIN" class="login-button" />                                
</form>

我想取用户在这个输入中输入的值:

<input type="text" placeholder="Username" name="log" id="log" value="<?php echo wp_specialchars(stripslashes($user_login), 1) ?>" />

并将价值投入其中:

<input type="hidden" name="redirect_to" value="<?php echo $_SERVER['REQUEST_URI']; ?>/<?php echo $_POST['log']; ?>" />

我试过输入S_POST['log'],但没有用。

有人能帮忙吗?

您可以在提交之前尝试JQuery来分配值。

// 1. Change the type='submit' to type='button'
// 2. Give new submit button an id, DO NOT USE 'submit' 
$(document).ready(function() {
    $('input#submits').click(function(event) {
        $('input[name="redirect_to"]').val( $('input[id="log"]').val() ); 
        if( $('input[name="redirect_to"]').val() != '' )
           $('form#login-form').submit();
    });
});

如果您要使用JQuery,您可以设置这样的侦听器:

$("#log").bind('input', function() {
    $("IDofHiddenField").val("www.domain.com" + $("#log").val());
  }