如何在 SweetAlert 中而不是在对象上显示值
How to show values in SweetAlert instead on objects
我正在使用带有 html attr 的甜蜜警报库,但我需要在 swal
中显示循环中的一些值,我得到的只是 [object object]
我不知道为什么。
这是我的代码:
$(".track_details").click(function () {
var data = $(this).data('val');
swal({
title: "HTML <small>Title</small>!",
text: "<div class='row'>\
<div class='col-md-2'>\
<strong>\
<span>Message</span>\
</strong>\
</div>\
<div class='col-md-2'>\
<strong>\
<span>Status</span>\
</strong>\
</div>\
<div class='col-md-2'>\
<strong>\
<span>Datetime</span>\
</strong>\
</div>\
<div class='col-md-2'>\
<strong>\
<span>City</span>\
</strong>\
</div>\
<div class='col-md-1'>\
<strong>\
<span>State</span>\
</strong>\
</div>\
<div class='col-md-1'>\
<strong>\
<span>Zip</span>\
</strong>\
</div>\
<div class='col-md-2'>\
<strong>\
<span>Country</span>\
</strong>\
</div>\
</div> <div class='row my_tracking_swal'></div> \
" + $.each(data, function (index, val) {
$("<div class='col-md-2'>\
<strong>\
<span>" + val.tracking_status + "</span>\
</strong>\
</div>\
<div class='col-md-2'>\
<strong>\
<span>" + val.tracking_status + "</span>\
</strong>\
</div>\
<div class='col-md-2'>\
<strong>\
<span>" + val.tracking_status + "</span>\
</strong>\
</div>\
<div class='col-md-2'>\
<strong>\
<span>" + val.tracking_status + "</span>\
</strong>\
</div>\
<div class='col-md-1'>\
<strong>\
<span>" + val.tracking_status + "</span>\
</strong>\
</div>\
<div class='col-md-1'>\
<strong>\
<span>" + val.tracking_status + "</span>\
</strong>\
</div>\
<div class='col-md-2' >\
<strong>\
<span>" + val.tracking_status + "</span>\
</strong>\
</div>\
").appendTo(".my_tracking_swal");
}),
html: true
}) ;
});
我的数据值看起来像 [{'tracking_status':'value'},{'tracking_status':'value'},{'tracking_status':'value'}]
目前您正在将字符串与对象连接起来。这就是为什么您会收到 [object object]
字符串作为结果。
你最好从数据数组中单独创建一个HTML字符串
然后将其与粘贴到 swal
.
中的 HTML 连接起来
这将有助于:
var data = $(this).data('val');
var myTrackingContent = data.map(function(item) {
return "<div class='col-md-2'><strong><span>" + item.tracking_status + "</span> </strong></div>";
}).join('');
swal({
title: "HTML <small>Title</small>!",
text: "...<div class='row my_tracking_swal'>" + myTrackingContent + "</div>...",
html: true
}) ;
我正在使用带有 html attr 的甜蜜警报库,但我需要在 swal
中显示循环中的一些值,我得到的只是 [object object]
我不知道为什么。
这是我的代码:
$(".track_details").click(function () {
var data = $(this).data('val');
swal({
title: "HTML <small>Title</small>!",
text: "<div class='row'>\
<div class='col-md-2'>\
<strong>\
<span>Message</span>\
</strong>\
</div>\
<div class='col-md-2'>\
<strong>\
<span>Status</span>\
</strong>\
</div>\
<div class='col-md-2'>\
<strong>\
<span>Datetime</span>\
</strong>\
</div>\
<div class='col-md-2'>\
<strong>\
<span>City</span>\
</strong>\
</div>\
<div class='col-md-1'>\
<strong>\
<span>State</span>\
</strong>\
</div>\
<div class='col-md-1'>\
<strong>\
<span>Zip</span>\
</strong>\
</div>\
<div class='col-md-2'>\
<strong>\
<span>Country</span>\
</strong>\
</div>\
</div> <div class='row my_tracking_swal'></div> \
" + $.each(data, function (index, val) {
$("<div class='col-md-2'>\
<strong>\
<span>" + val.tracking_status + "</span>\
</strong>\
</div>\
<div class='col-md-2'>\
<strong>\
<span>" + val.tracking_status + "</span>\
</strong>\
</div>\
<div class='col-md-2'>\
<strong>\
<span>" + val.tracking_status + "</span>\
</strong>\
</div>\
<div class='col-md-2'>\
<strong>\
<span>" + val.tracking_status + "</span>\
</strong>\
</div>\
<div class='col-md-1'>\
<strong>\
<span>" + val.tracking_status + "</span>\
</strong>\
</div>\
<div class='col-md-1'>\
<strong>\
<span>" + val.tracking_status + "</span>\
</strong>\
</div>\
<div class='col-md-2' >\
<strong>\
<span>" + val.tracking_status + "</span>\
</strong>\
</div>\
").appendTo(".my_tracking_swal");
}),
html: true
}) ;
});
我的数据值看起来像 [{'tracking_status':'value'},{'tracking_status':'value'},{'tracking_status':'value'}]
目前您正在将字符串与对象连接起来。这就是为什么您会收到 [object object]
字符串作为结果。
你最好从数据数组中单独创建一个HTML字符串
然后将其与粘贴到 swal
.
这将有助于:
var data = $(this).data('val');
var myTrackingContent = data.map(function(item) {
return "<div class='col-md-2'><strong><span>" + item.tracking_status + "</span> </strong></div>";
}).join('');
swal({
title: "HTML <small>Title</small>!",
text: "...<div class='row my_tracking_swal'>" + myTrackingContent + "</div>...",
html: true
}) ;