<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&#39; cars&#39;。我尝试过这样的事情但是没有工作
$("li.cars").each(function() {
var obj = {
keywords: $("li.keywords").text()
}
});
我想用AJAX将此JSON发送到服务器。
修改
这是ajax
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)
您可以创建一个对象,并在其关键字key中创建一个li值数组:
<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>
&#13;
{keywords: ["someval","anotherval"]}
&#13;
它会给你这样的东西:
var myJSON = JSON.stringify(obj);
你可以简单地在后端发送obj变量,json在后端发送它。
如果要将其发送到服务器,可以将其字符串化,如下所示:
IQueryable<TEntity>
答案 1 :(得分:0)
var items = [];
$('ul').children().each(function() {
var $this = $(this);
var item = { id: $this.attr('value'), title: $this.html() };
items.push(item);
});
试一试......