我在基于输入值显示输入文本时遇到我的jquery问题。
这是JS小提琴演示:

http://jsfiddle.net/Ltapp/364/

当我尝试输入@hotmail时,将显示输入框。但是,当我想在#hotm输入框中键入一些文本时,它将再次隐藏。

JS代码:

$(window).load(function(){
var myString = '@hotmail';
$('#hotm').hide();

$("input").keyup(function () {
var value = $(this).val();
    if($(this).val().match(myString)) {
        $('#hotm').show();
    } else {
        $('#hotm').hide();
    }
});

});

最佳答案

这是因为您的选择器$("input")影响了两个输入元素。我已将其更新为$("input:first")选择器。 JsFiddle here

    $("input:first").keyup(function () {
    var value = $(this).val();
    if(value.match(myString)) {
        $('#hotm').show();
    } else {
        $('#hotm').hide();
    }
});

10-07 22:37