2017-04-04 7 views
1
<div class="col-xs-4 no-padding contenteditable-color" style="background-color: transparent;"> 
    <ul class="ul-product"> 
     <li class="li-product-page cars contenteditable" contenteditable="false">qweryt</li> 
    </ul> 
</div> 
<div class="col-xs-4 no-padding contenteditable-color" style="background-color: transparent;"> 
    <ul class="ul-product"> 
     <li class="li-product-page cars contenteditable" contenteditable="false">bbzzz</li> 
    </ul> 
</div> 

私は複数のliを持っています。私はすべてを取得し、JSONを 'cars'という名前で作成したいと考えています。私はこのような何かをしようとしましたが、私はAJAXを使用してサーバーにこのJSONを送りたいリボンからJSONを作成

$("li.cars").each(function() { 
    var obj = { 
     keywords: $("li.keywords").text() 
    } 
}); 

動作しません。ここで

EDIT

アヤックス

var form = $('form')[0]; // You need to use standard javascript object here 
      var data = new FormData(form); 
       data.append('car', brand); 
       data.append('keywords', arr); 


      $.ajax({ 
       type:'POST', 
       enctype: 'multipart/form-data', 
       url:'myurl', 
       data: data, 
       processData: false, 
       cache: false, 
       contentType:false, 
       success:function(response){ 
        console.log(response); 


       }, 
       error: function(data){ 
       console.log("error"); 
       console.log(data); 
       } 

      }) 
+0

あなたは、単一のアレイまたは各車の中でそれらをしたいですそれは自分のオブジェクトですか? –

+0

@Tusharそれを+1することができるように答えてください。 –

+0

@Tusharこのオブジェクトをajaxで送信しています。要求ペイロードで私は[オブジェクトオブジェクト]を持っています – driveaferrari

答えて

0

はあなたがオブジェクトを作成し、そのキーワードをキーにできているのli値の配列を作る:

var obj = {keywords:[]}; 
 
$("li.cars").each(function() { 
 
     obj.keywords.push($(this).text()); 
 
}); 
 
console.log(obj);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="col-xs-4 no-padding contenteditable-color" style="background-color: transparent;"> 
 
    <ul class="ul-product"> 
 
     <li class="li-product-page cars contenteditable" contenteditable="false">qweryt</li> 
 
    </ul> 
 
</div> 
 
<div class="col-xs-4 no-padding contenteditable-color" style="background-color: transparent;"> 
 
    <ul class="ul-product"> 
 
     <li class="li-product-page cars contenteditable" contenteditable="false">bbzzz</li> 
 
    </ul> 
 
</div>

{keywords: ["someval","anotherval"]} 

あなたは単にバックエンドoをOBJ変数を送信することができますし、JSONは、バックエンドでそれをデコード:それはそうのような何かを与えるだろう。

あなたはそれをサーバーに送信したい場合は、あなたがそうのようにそれを文字列化することができます:これを試してみてください

var myJSON = JSON.stringify(obj); 
+0

私は送りたいこのオブジェクトは、私があなたの答えを私のデータベースに入れてくれるなら、 – driveaferrari

+0

を使って、var myJSON = JSON.stringify(obj) JSONを文字列として使用するとJSONとして表示されない –

+0

を更新するようにしてください。私は[オブジェクトオブジェクト] – driveaferrari

0
var items = []; 

$('ul').children().each(function() { 
    var $this = $(this); 
    var item = { id: $this.attr('value'), title: $this.html() }; 
    items.push(item); 
}); 

...

関連する問題