JQuery无法通过val()函数获得正确的值

时间:2018-05-23 11:38:43

标签: javascript jquery html

我有一个这样的表格

$('#email').on('keyup', function() {
  console.clear();
  console.log($('#email').val());
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>

<input type="email" name="email" class="form-control" placeholder="Email" required id="email">

我希望获得电子邮件输入的值,因此我使用此$("#email").val()。 但我发现这只是用英文而不是用中文。 如果我在电子邮件输入中输入“33333 @去.com”,代码将给出该值:“33333@xn--1nr.com”。 我无法理解它。这不是unicode的utf-8。我甚至没有看到任何这个。

enter image description here

1 个答案:

答案 0 :(得分:1)

这无关紧要。

xn--1nr.com去.com的{​​{3}}编码 - 毕竟,如果您向33333@去.com发送邮件,您实际上最终会向33333@xn--1nr.com发送邮件

由于该字段是一个电子邮件字段,浏览器正试图通过将值规范化为Punycode来为您设置聪明。