将用户电子邮件输入字段复制到用户名字段中(去除包括“@”和之后的所有内容)
Duplicate user email input field into username field (stripping everything including and after '@')
我有以下表单字段:
<label for="user_email"><?php _e('Your Email'); ?>: </label>
<input type="text" name="user_email" value="<?php echo esc_attr(stripslashes($user_email)); ?>" size="25" id="user_email" class="required email" tabindex="102" />
<label for="user_login"><?php _e('Username'); ?>: </label>
<input type="text" name="user_login" value="<?php echo esc_attr(stripslashes($user_login)); ?>" size="20" id="user_login" tabindex="101" class="required" />
有没有办法使user_login字段从输入到user_email中实时填充(理想情况下是逐个字母,如果没有,则在未聚焦后),在@符号之前停止,以便当用户在user_email字段中填写"example@example.com"时,user_login字段会自动填充"示例"?
我想最终将用户名字段设置为隐藏,但想先看看它是否明显有效。
是的,您可以侦听关键事件并将值设置为其他字段,如下所示:
$('#user_email').keyup(function(){
var email = $('#user_email').val();
var index = email.indexOf('@');
var username = index >= 0 ? email.substring(0, index) : email;
$('#user_login').val(username);
});
看到这个小提琴
我认为这个函数可能很方便地建议一些用户名,但用户应该能够覆盖它。也许他想要一个不同的名字,或者这个名字已经被取了。否则,您可以只使用整个电子邮件地址广告,例如Facebook所做的用户名。
此外,如果您隐藏用户名字段,则可以将其省略并使用PHP从服务器端的电子邮件地址获取用户名。请记住,用户可以向您发送一些其他值,只需使用浏览器包含的工具操作页面即可。或者也许JavaScript被禁用,该字段将为空白。
简而言之:你应该如何让该字段并让用户使用它,或者只是完全删除它。
根据需要
在keyup或其他相关操作中触发它:
$('#user_login').val($('#user_email').val().split('@')[0]);
您应该使更改成为可能:
建立:
var userNoEdit = true;
关于电子邮件的事件更改:
if(userNoEdit){
$('#user_login').val($('#user_email').val().split('@')[0]);
}
和
在事件手动更改用户名时:
userNoEdit = false;
相关文章:
- Meteor-添加用户自定义字段的方法不起作用
- 我怎么能让流星简单模式中的一个字段等于一个js变量,并且仍然让用户填写简单模式的其余部分
- 需要提取当前登录用户的用户名以在字段中输入
- MeteorJS:用户集合如何公开新字段
- 使用具有用户定义字段的新请求者创建新的Zendesk票证
- 阻止用户在字段中粘贴
- 当用户单击按钮(在光标位置)时,在输入字段中添加一个文本字符串
- 如何在用户输入后立即获取输入字段的值
- 无法根据用户在编辑窗口中的输入显示/隐藏jtable jquery字段
- 用户提供的字段在解析登录时不返回
- 将用户电子邮件输入字段复制到用户名字段中(去除包括“@”和之后的所有内容)
- 当用户在输入字段事件中输入内容时,为该字段事件添加动画占位符
- 如何使用ian:accounts-ui-botstrap-3根据Meteor中的用户输入设置配置文件字段值
- AngularJs的Kendo UI:当用户在网格中选择行时,如何在文本框字段上绑定数据
- 如何通过向用户推送模式引用来更新用户对象's数组字段
- 如何检测用户何时在Google Places字段中输入无效位置
- 自动完成PHP表单选择字段中的用户姓氏
- 当用户输入时打开一个弹出窗口,使用javascript填充表中的输入字段
- 向PHP表单添加更多字段(用户可以添加多个地址)
- 向Meteor添加用户id字段.用户收集的帐户包