Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 使用按键事件识别按键时未显示验证消息_Jquery - Fatal编程技术网

Jquery 使用按键事件识别按键时未显示验证消息

Jquery 使用按键事件识别按键时未显示验证消息,jquery,Jquery,我正在使用表单获取名称和描述。当用户尝试更新详细信息时,我将显示验证消息以显示“名称已存在”。 我正在使用以下代码显示消息: $('#name').bind("keypress", function(e) { if (e.keyCode == 13) { e.preventDefault(); updateName(); return false; } }); '函数updateName(){ $.ajax({ 类型:“POST”

我正在使用表单获取名称和描述。当用户尝试更新详细信息时,我将显示验证消息以显示“名称已存在”。 我正在使用以下代码显示消息:

$('#name').bind("keypress", function(e) {
    if (e.keyCode == 13) {
        e.preventDefault();
        updateName();
        return false;
    }
});
'函数updateName(){ $.ajax({ 类型:“POST”, url:“/Name/Name”, 数据:postData, async:false, 成功:功能(数据){ if(data.NameExists){ $(“#名称”).html(“名称已存在”)

}"

当我按enter键时,验证消息显示,当我松开enter键时,消息消失。我也尝试了keydown事件。但它不起作用


任何人都可以帮助我了解您的经验。谢谢!

尝试使用此结构

$(document).keypress(function(e) {
  if(e.which == 13) {
    // enter pressed
  }
});


希望这对您有所帮助,您可以尝试以下方法:-

$('#name').bind("keyup", function(e) {
    if (e.keyCode == 13) {
        updateName();
        e.preventDefault();
        return false;
    }
});

标记假设:

  • 如果按下“按键”,则会多次触发事件
  • 释放时,使用“keyup”启动
  • 使用
    e.which
    ,因为jQuery将键值规范化为该值
如果阻止默认值,则无需返回false-是否也希望阻止传播


如果用户签出怎么办?

请包括所有相关的问题代码。我已经尝试了您的,但它是工作文件,这是小提琴。您是否缺少任何代码?您是否可以添加关于为什么应该使用此选项的解释?您是否可以添加关于为什么应该使用此选项的解释?
$('#name').bind("keyup", function(e) {
    if (e.keyCode == 13) {
        updateName();
        e.preventDefault();
        return false;
    }
});
$('#name').on("keyup", function(e) {
    if (e.which == 13) {
        e.preventDefault();
        updateName();
    }
});