0

郵便番号の配列をサービスエリアとして利用する価格見積り見積もりツールを作成しようとしています。郵便番号のリストはかなり広範囲に及ぶため、CSV などの外部ソースを使用する方が良いのか、オプションなのかはわかりません。

私が望むのは、人々が郵便番号を入力することです。それがリストにあれば、価格計算オプションが与えられます。

郵便番号がリストにない場合は、「Please Call for More Info」というメッセージが表示されます。

私は今、一種のフランケンシュタインのコードですが、これは私が持っているものです:

$(function(){
var zipCodes = ['92056', '90210', '92121', '92101','19148'];
$('#id_div_one, #id_div_two').hide();
if(jQuery.inArray(zipCodes) > -1) {
$('#id_div_one').css('display', 'inline');
} else {
$('#id_div_two').css('display', 'inline');
}
return false;
});

そして、これはdivです:

<form  id="zip_form">
Zip Code: <input type="text" name="zipcode" id="id_zip_code"><input type="submit"    
value="Submit">
</form>

<div id="id_div_one">[CP_CALCULATED_FIELDS id="6"]</div>
<div id="id_div_two">Please call our office for a quote</div>

送信が価格計算プラグインの表示をトリガーする場所で動作しましたが、配列からプルする if / else を操作する方法を理解していません。どんな助けも大歓迎です - 私はあまり運がなくてウェブを精査してきました.

4

2 に答える 2

1

$.inArray() には、少なくとも 2 つの引数が必要です。1)検索する値と 2)調べる配列です。ドキュメンテーション

あなたの場合、値(の署名による最初の引数)のみを渡してinArrayいます。必要なものは次のとおりです。

if(jQuery.inArray($('#id_zip_code').val(), zipCodes) > -1) {
    ...
}
于 2013-05-28T03:23:01.733 に答える
0

試す

$(function(){
    var zipCodes = ['92056', '90210', '92121', '92101','19148'];
    $('#id_div_one, #id_div_two').hide();

    $('#zip_form').submit(function(){
        $('#id_div_one, #id_div_two').hide();
        if(jQuery.inArray($('#id_zip_code').val(), zipCodes) > -1) {
            $('#id_div_one').css('display', 'inline');
        } else {
            $('#id_div_two').css('display', 'inline');
        }
        return false;
    });

});

デモ:フィドル

于 2013-05-28T11:10:38.797 に答える