我有两个字段(用户名和电子邮件),我想用电子邮件字段的内容自动填充用户名,因为用户名是隐藏的输入。
我只需要@domain.com
之前的满足感。现在我正在使用.keyup()
,但我也可以使用.change()
。
我怎样才能在@domain.com
之前获取内容?
$('#id_email').keyup(function () {
$('#id_username').val($(this).val());
});
编辑:所有答案都很完美,非常感谢你。
答案 0 :(得分:3)
有点简单,但你可以做点什么吗
var email =" test@example.com" ;; var username = email.split(' @')[0];
这样:
<script>
$('#id_email').change(function () {
var email = $(this).val();
$('#id_username').val(email.split('@')[0]);
});
</script>
&#13;
它会起作用,但当然会假定有效的电子邮件地址。
答案 1 :(得分:2)
Dustin Simpson 答案的编辑版本,仅仅因为我相信输入它更适合这种东西,而不是 keyup 或更改,而且我们也不需要存储任何电子邮件变量。
$('#id_email').on('input',function(){
$('#id_username').val($(this).val().split('@')[0]);
});
检查 fiddle
答案 2 :(得分:1)
试试这个
$('#id_email').keyup(function () {
var usr = $(this).val();
var usr = usr.split('@');
$('#id_username').val(usr[0]);
});
答案 3 :(得分:1)
尝试这个...
$('#id_email').keyup(function () {
$('#id_username').val($(this).val().split('@')[0]);
});