JQuery比较任何匹配的数组

时间:2013-05-03 21:05:25

标签: javascript jquery arrays

我认为我有一个非常简单的问题,但我无法解决它。

在表单提交上,我想比较两个隐藏输入类型的值,如果找到任何匹配,则向用户返回警报并阻止提交。几乎隐藏的输入类型值将是1-3,可能是1,12,123,13等。所以如果1和123,则抛出警报。

所以我尝试了类似的东西,但我显然对我正在做的事感到困惑。

 var new_products = $('#new_products');
 var array_new_products = jQuery.makeArray(new_products);
 var existing_products = $('#existing_products');
 var array_existing_products = jQuery.makeArray(existing_products);

 $("#my_form").submit(function(e) {

 if (jQuery.inArray(existing_products, new_products) >= 0) {
            e.preventDefault();
            alert ("This Promotion matches one or more products already associated to this Group.  If you continue the existing Promotion will be cancelled and replaced with the currently selected Promotion!");
 }
 return true;
 });

我愿意通过比较字符串和返回匹配或其他任何内容来做到这一点。我只是Jquery的新手。提前谢谢。

1 个答案:

答案 0 :(得分:2)

$.each($('#new_products').val().split(''), function(i, char) {
    var existing = $('#existing_products').val();

    if (existing.indexOf(char) != -1)
        alert('mathces found');
});

检查#new_product返回的值中是否存在#existing_products返回值中的任何字符?