首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在提交时修改表单输入值

在提交时修改表单输入值
EN

Stack Overflow用户
提问于 2016-01-01 19:25:46
回答 2查看 279关注 0票数 1

我不知道如何表达这个标题,但这是我想做的。

我有一个表单登录到网络邮件,我没有访问网络邮件-它只是张贴表单输入到网站和网络邮件服务器从那里获取它。

登录到此页面的每个人都将使用相同的电子邮件扩展名(例如"@myemail.com"),所以我想省去每次输入"mike“的麻烦,他们只需写”mike“,表单就会自己添加"@myemail.com”。

我可以把这个表单放到一个中间的php页面,把"mike“+ "@mymail.com”放在一起,然后把这个信息发布到网络邮件中?

还是有一个更简单的方法来做到这一点,而不必创建另一个页面?

代码语言:javascript
复制
<form name="loginForm" action="http://webmail.emailsrvr.com/login.php" method="POST" target="_blank">
<input type="hidden" name="js_autodetect_results" value="SMPREF_JS_OFF">
<input type="hidden" name="just_logged_in" value="1">
<input type="hidden" name="type" value="v3">
<input type="hidden" name="useSSL" id="useSSL" value="">

<input type="email" name="user_name" placeholder="Username" required autofocus>
<input type="password" name="password" placeholder="Password" required>

<label for="remember"><input type="checkbox" name="remember">Remember my info</label>
<button type="submit">Sign In</button>

</form>

我想取这里输入的价值..。

代码语言:javascript
复制
<input type="email" name="user_name" placeholder="Username" required autofocus>

...and向它添加一个类似于"@myemail.com“的扩展,然后发布它。

有什么想法吗?提前谢谢你的帮助。

我能做这种事吗?

第1页-输入用户名和密码。

代码语言:javascript
复制
<input type="text" name="send_email" placeholder="Username" required autofocus>
<input type="password" name="send_password" placeholder="Password" required>

<label for="remember"><input type="checkbox" name="remember">Remember my info</label>
<button type="submit">Sign In</button>
</form>

第2页- PHP获取用户名并添加"@myemail.com“并发送表单.

代码语言:javascript
复制
<?php
    $form_email = $form_password = "";

    if (!empty($_POST['send_email']) && !empty($_POST['send_password'])) { 
        $form_email = $test($_POST['send_email']) . '@fountaincreations.ca';
        $form_password = $test($_POST['send_password']); 

        echo '<form name="loginForm" action="http://webmail.emailsrvr.com/login.php" method="POST" target="_blank">';
        echo '<input type="hidden" name="js_autodetect_results" value="SMPREF_JS_OFF">';
        echo '<input type="hidden" name="just_logged_in" value="1">';
        echo '<input type="hidden" name="type" value="v3">';
        echo '<input type="hidden" name="useSSL" id="useSSL" value="">';
        echo '<input type="hidden" name="user_name" value="' . $form_email . '">';
        echo '<input type="hidden" name="form_password" value="' . $form_password . '">';
        echo '</form>';
    } else { 
        echo '<p style="text-align:center;padding:40px 20px;">Please go back and try again.</p>';
    }

    function test($data) {
        $data = strtolower(data);
        $data = trim($data);
        $data = stripslashes($data);
        $data = htmlspecialchars($data);
        return $data;
    }
?>

但是我如何告诉PHP自动提交表单呢?

如果我要使用jQuery,下面是我所拥有的:

不过,它目前不起作用。

HTML:

代码语言:javascript
复制
<div class="box top">
<form name="loginForm" action="http://webmail.emailsrvr.com/login.php" method="POST" target="_blank">
<input type="hidden" name="js_autodetect_results" value="SMPREF_JS_OFF">
<input type="hidden" name="just_logged_in" value="1">
<input type="hidden" name="type" value="v3">
<input type="hidden" name="useSSL" id="useSSL" value="">
  <div class="inner">
    <div class="inner-row"><input type="text" name="user_name" placeholder="First Name" required autofocus></div>
    <div class="inner-row"><input type="password" name="password" placeholder="Password" required></div>
    <div class="inner-row">
        <div class="inner-col col-2-4"><label for="remember"><input type="checkbox" name="remember">Remember my info</label></div>
        <div class="inner-col col-2-4"><button type="submit">Sign In</button></div>
    </div>
  </div>
</form>
</div>
<div class="box bottom">
    <div class="inner">
        <div class="inner-row"><p>Already signed in? <a href="http://webmail.emailsrvr.com/a/webmail.php" target="_blank"><b>Go to your inbox.</b></a></p>
    </div>
</div>

联署材料:

代码语言:javascript
复制
<script type="text/javascript">
  $(document).ready(function(){
    $("button[type='submit']").on('click', function(e){
        e.preventDefault();
        var userEmail = $.trim($("input[name='user_name']").val());
        $("input[name='user_name']").val(userEmail+"@fountaincreations.ca");
        $("form[name='loginForm']").submit();
    });
  }); 
</script>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-01-02 02:25:10

我认为如果您想将用户名+ "@mymail.com“附加到useremail字段,下面是我的建议: 1# create input user_email (只需隐藏此字段)

代码语言:javascript
复制
<input type="hidden" name="user_email" id="user_email" placeholder="User Email">

2#在下面添加js

代码语言:javascript
复制
$('#user_name').on('input', function() {
   username = this.value+'@myemail.com';
   $('#user_email').val(username);
});

这里的例子

票数 1
EN

Stack Overflow用户

发布于 2016-01-01 19:32:16

我想会这样的,希望这能帮到你。在这段代码中,我要做的是,首先停止通过e.preventDefault();提交表单,然后通过附加"@mymail.com“来获取所需输入的值并将其赋值。

代码语言:javascript
复制
$(document).ready(function(){
    $("button[type='submit']").on('click', function(e){
        e.preventDefault();
        var userEmail = $.trim($("input[type='email']").val());
        $("input[type='email']").val(userEmail+"@mymail.com");
        $("form[name='loginForm']").submit();
    });
});
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34559275

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档