【发布时间】:2015-06-22 10:04:23
【问题描述】:
我很好奇如何组合出一种方法来检测用户从表单的选项中选择了什么。根据他们的选择将改变输入字段文本的处理方式。
想要的效果:
选项 A :接受文本,因此立即处理,
选项 B :在继续处理表单之前接受要验证的电子邮件。
选项 C :接受电子邮件,因此在继续处理表单之前验证他们的电子邮件。
最后,所有三个选项都附加到一个文本文件中。到目前为止,我只能得到它来验证电子邮件。
提前致谢。
HTML 表单:
<form method="post" class="subscription-form form-inline" id="subscribe" role="form">
<h4 class="subscription-success"><i class="icon_check"></i> Thank you for requesting... </h4>
<h4 class="subscription-error">Something Wrong!</h4>
<select id="iam" name="usertype" class="form-control input-box">
<option data-placeholder = "Enter A username" selected value="A">Enter A account username</option>
<option data-placeholder = "enter B email" value="B"> Enter B email </option>
<option data-placeholder = "enter C email" value="C"> Enter C email </option>
</select>
<input type="email" name="email" id="subscriber-email" placeholder="Your Email" class="form-control input-box">
<button type="submit" name="submit" id="subscribe-button" class="btn btn-default standard-button">Submit</button>
</form>
JS - 到目前为止只检测选择和更改占位符文本:
$('#iam').on('change', function() {
var placeholder = $(this).find(':selected').data('placeholder');
$('#subscriber-email').attr('placeholder', placeholder);
});
PHP - 到目前为止只验证电子邮件并将结果附加到文件:
<?php
// Note: filter_var() requires PHP >= 5.2.0
if ( isset($_POST['email']) && filter_var($_POST['email'], FILTER_VALIDATE_EMAIL) ) {
$selected_val = $_POST['usertype']; // Storing Selected Value In Variable
$e_mail = $_POST['email'] . " - is a - " . $selected_val . " ," . "\n";
file_put_contents('email-list.txt', $e_mail, FILE_APPEND | LOCK_EX);
}
?>
【问题讨论】:
-
你想要达到的结果是什么?我的意思是在 js 中还是在 php 中?
-
您真正想要什么?这还不清楚。请说明?
-
我已经编辑了我的帖子以更清楚一点。 @anantkumarsingh
-
当第一个选项选择您的输入类型更改为文本字段时,您是否想要,其余两个将是电子邮件类型字段?不是吗?
-
请说出我问了什么?
标签: javascript php jquery html validation