在Easyui Datagrid中插入行时无法创建工具提示

时间:2019-03-18 09:49:21

标签: jquery jquery-easyui

我的数据库中有一个带有base64 Image的图书清单。打开图书插入页面时,我将所有图书信息(包括名称,ISBN,发布者等)加载到数组中,但图像除外。因此,当我在字段中插入书籍ID时,我希望在收费提示中显示图像。我将命中对控制器的请求并获取图像。但是我的工具提示不起作用。甚至我得到的图像数据都是未定义的。

这是插入行的代码:

$('#dg').datagrid('insertRow', {
index: editIndex, // index start with 0
row: {
book_id: item_id[val], bookname: item_name[val],image: item_image[val], authors: item_authors[val],
item_rate: item_localsale_rate[val], isbn: item_isbn[val],item_quantity: vr_qty, itemcost: 0, item_discount: 0, unitcost: totalItemCost
}

})

这是我用于生成工具提示的代码:

                    $(this).datagrid('getPanel').find('tr.datagrid-row').each(function () {
var index = parseInt($(this).attr('datagrid-row-index'));

 $(this).tooltip({
zIndex: 9999999,
trackMouse: false,
position: 'top',
content: '<span style="color:#fff;"><img src=' + data.rows[index]['image'] + ' width="100" height="100"></span>'

})
                        
})

这是我为加载数据创建的数组: 它的工作正常。所有数据均已成功加载

var bookList = new Array();
var item_id = new Array();
var item_name = new Array();
var item_image = new Array();
var item_isbn = new Array();
var item_authors = new Array();
var item_face_rate = new Array();
var item_wholesale_rate = new Array();
var item_localsale_rate = new Array();
var item_retailsale_rate = new Array();
var item_special_price = new Array();
var item_teacher_price = new Array();
var store_id = new Array();

var b_id = <?php echo $row->book_id; ?>;
item_id[b_id] = <?php echo $row->book_id; ?>;
item_name[b_id] = '<?php echo $row->name; ?>';
item_isbn[b_id] = '<?php echo $row->isbn; ?>';
item_image[b_id] = '';
item_authors[b_id] = '<?php echo $row->authors; ?>';
item_localsale_rate[b_id] = <?php echo $row->local_sale; ?>;
store_id[b_id] = <?php echo $row->store_id; ?>;

 var url = '<?php echo base_url('sales/Salesinvoice/getBookCover'); ?>'+'/'+ item_id[val];
alert(url);
$.ajax({
    type: 'POST',
    url: url,
    dataType: 'json',
    success: function (data) {
    var image = data.image;
    item_image[val] = image;
    alert(image);
    },
    error: function (error) {
    alert('Due Collect error');
    }
    });

我实际上对方法有点困惑。将行插入到datagrid时获取图像的方法应该是什么。

0 个答案:

没有答案