Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.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
Javascript 在错误的字段输入上显示div_Javascript_Jquery - Fatal编程技术网

Javascript 在错误的字段输入上显示div

Javascript 在错误的字段输入上显示div,javascript,jquery,Javascript,Jquery,我使用下面的脚本在正确输入时显示一个div。 但我想显示另一个div,只要输入填写错误 $(document).ready(function () { $('#inputId').bind('keyup', function () { $('#volgende div').hide(); var divName = this.value; if (divName) { $('#volgende #' + divName).show(); } });

我使用下面的脚本在正确输入时显示一个div。 但我想显示另一个div,只要输入填写错误

$(document).ready(function () {
$('#inputId').bind('keyup', function () {
    $('#volgende div').hide();
    var divName = this.value;
    if (divName) {
        $('#volgende #' + divName).show();
    }
});
});
JSfiddle:

我应该在某处添加一个“else”,但我似乎无法使其工作。

尝试:

$(document).ready(function () {

    $('#inputId').bind('keyup', function () {
        $('#volgende div').hide();
        var divName = $(this).val(),
            div     = $('#volgende #' + divName);

        if (div.length) {
            div.show();
        } else {
            // do something else
        }
    });

});

您应该尝试
更改
事件。所以

$('#inputId').bind('change', function () {
    if ($(this).val() != "[CORRECT_INPUT]") {
        $('#my_incorrect_input_div').show();
    }
});

下面是一个简单而粗糙的例子:

HTML


谢谢但是我如何在“做其他事情”的位置显示另一个div呢?在这里,我根据@hsz的建议更新了你的js fiddle代码。
<input type="text" id="inputId" maxlength="8" autocomplete="off">
<div id="volgende">
    <div id="abc-good" class="btn">Nice job! You know your ABC's</div>
    <div id="abc-bad" class="btn">Not there yet...</div>
</div>
$('#inputId').bind('keyup', function () {
    
    $('#volgende div').hide();
    
    var desiredVal = 'abc';    // what the user SHOULD type
    var divName = this.value;  // what the user DID type
    
    var msgKey = divName == desiredVal ? 'good' : 'bad';
    
    // if the user has typed something, show the message
    if( divName.length > 0 )
        $('#'+desiredVal+'-'+msgKey).show()
});