私は、フォーム提出時にJSONオブジェクトを作成してPerlに渡そうとしています。 jQuery-uiのソート可能な並べ替えを可能にするために、ul
とli
の複数の入れ子になっています。結果が見つからない場合、Jquery each()フォールバック
(いくつかのdiv
の上に広がる)ソートli
Sを救うことができるように、私は次のコードを書いた:「そこクラスdiv_abcd
と4つのdiv
Sの最大値があるが、それらはドン
jQuery("form[name='editorview']").submit(function(event) {
event.preventDefault();
var values = '{ ';
jQuery(this).find(".div_abcd").each(function(){
values += '"'+this.id+'": [';
jQuery(this).find("div[id^='CONT']").each(function(){
values += '{"'+this.id+'": [';
jQuery(this).find("li").each(function(){
if (jQuery(this).not("class='placeholder'")){
values += '"'+this.id+'",';
} else {
values +='"placeholder",';
}
});
values = values.slice(0, -1); //removing trailing ,
values +=']},';
});
values = values.slice(0, -1); //removing trailing ,
values += '],';
});
values = values.slice(0, -1); //removing trailing ,
values += '}';
jQuery("#order").val(values);
document.editorview.submit();
});
を必然的に他のdiv
が含まれています。この場合、私は2番目のvalues = values.slice(0, -1);
は何も一致しないelse
jQuery(this).find("div[id^='CONT']").each(function(){
場合を持っているどのような方法がありますライン5
から開口[
を削除する問題を抱えています。 .not()
を使用しようとしましたが、動作しませんでした。
編集:私の問題が解決されていても
、私はまだ、それぞれ()が一度も通過していないときを知っている可能性があるかどうかを知りたいです。
第二編集:今、明らか
すべて。ありがとう。
私はより良い方法は、配列に値をプッシュすることだと思うし、 'join( '、')'を実行すると、末尾のカンマを心配する必要はありません。 Felixが提案していることを実行します。P – Mottie