0

現在、フォームの値を送信するために AJAX を使用しています。ID ではなくクラスごとに値を取得する必要があります。情報を収集しているフォームは、Web アプリケーション内で複数回使用されます。Framework7 と Cordova を組み合わせて使用​​しているため、アプリケーションの起動時にすべてが DOM に読み込まれます。

それで、DOM内にこれらのアイテムがあるとしましょう:

<html>
   <div class="page1"> 
      <input type="text" class="text-foo" />
   </div>

   ....

   <div class="page1244">
      <input type="text" class="text-foo" />
   </div>
</html>

フォームを表示するときは、フォーム データをすべてクリアするために次のようにする予定です。

$(".text-foo").val("");

しかし今、これらの入力から空白以外の最初の値を取得する必要があります。理想的には、JQuery セレクターは次のようになります。

var valueFoo = $(".text-foo").firstNonBlankVal();
//submit the form with elite psuedocode
$.ajax(url: url + "?foo=" + escape(valueFoo));

フォーム項目ごとに for/each ループを手動で実行し、繰り返しオブジェクトごとに空白以外の値をチェックするのは...無駄に思えます。助言がありますか?

4

1 に答える 1

0

$.each が最良のアプローチだと思います。以下はコードスニペットです..

var firstNonBlankedValue = "";
$(".text-foo").each(function(){
    if($(this).length > 0){
        firstNonBlankedValue = $(this).val();
        return;
    }
});
console.log(firstNonBlankedValue);

JSFIDDLEを確認することもできます

于 2015-04-20T21:25:07.787 に答える