模态弹出窗口根据输入显示不同的文本

时间:2014-06-24 11:30:09

标签: javascript jquery conditional

所以我试图有一个模式弹出窗口,根据用户在文本框中键入的内容显示两条消息。我希望脚本检查输入是否包含两个字符串之一,ME或TN(因为我正在看一个邮政编码检查器)。

无论我尝试什么,我都无法让弹出窗口根据输入显示两条消息。我不希望表单提交,我只想抓取已输入的内容。

这是我到目前为止的链接(想象一下,关闭图标位于右上方)..

$(document).ready(function () {

    var formResult = $('#postcode-form')
    var postcodeMe = /^[me]+$/;

    $("#postcode-form").click(function () {
        if (formResult.val().indexOf(postcodeMe)) {
            $("#basic-modal-content").html("<h2>Yes it works</h2>")
        } else {
            $("#basic-modal-content").html("<h2>no its wrong</h2>")
        }
    });
});

http://www.muchmorecreative.co.uk/modal_test/basic-modal-testing-jquery-conditions/

3 个答案:

答案 0 :(得分:0)

试试这个:

$(document).ready(function() {


var formResult =  $('#postcode-form')
var postcodeMe= /^[me]+$/;

$( "#postcode-form" ).click(function(e) {

e.preventDefault();

if ($(this).val().contains(postcodeMe)){

    $( "#basic-modal-content").html("<h2>Yes it works</h2>")

}
    else {

    $( "#basic-modal-content").html("<h2>no its wrong</h2>")    
    }

});
});

答案 1 :(得分:0)

问题在于您将formResult设置为全球&#39;变量(sorta)。它在页面加载时获取其值,并且永远不会更改。您应该更改代码以在实际需要时获取值,而不是在页面加载后立即获取。

$(document).ready(function () {
    var postcodeMe = /^[me]+$/;

    $("#postcode-form").click(function () {
        //move it to here so that you get the value INSIDE the click event
        var formResult = $('#postcode-form')

        if (formResult.val().indexOf(postcodeMe)) {
            $("#basic-modal-content").html("<h2>Yes it works</h2>")
        } else {
            $("#basic-modal-content").html("<h2>no its wrong</h2>")
        }
    });
});

要考虑的其他一些小事:

indexOf返回一个数字。你应该做indexOf(postcodeMe)&gt; = 0

您可以查看HERE

的索引

答案 2 :(得分:0)

试过这两个但没有发生,玩弄它并找到了解决方案..

$(document).ready(function() {



var formResult =  $('#postcode-input')

 $( "#postcode-button" ).click(function(e) {

 e.preventDefault();


 if ($('#postcode-input').val().indexOf("ME")!==-1 || $('#postcode- input').val().indexOf("me")!==-1 ){
// perform some task
 $( "#basic-modal-content").html("<h2>Yes it works</h2>")
  }

else {

$( "#basic-modal-content").html("<h2>no its wrong</h2>")    
}

 });
 });

感谢您的帮助!