目前 SNO 列的类型为元素(输入类型文本)。 是否可以像公司列一样具有相同的外观
我试过
var orderid = 'order_' + incrementi;
html += '<tr id=' + incrementi + ' company_id=' + company_id + ' style="cursor: move;">\
<td id=' + orderid + ' style="vertical-align: middle;">' + incrementi + '</td>\n\
<td style="vertical-align: middle;">' + company_name + '</td>\n\
<td style="vertical-align: middle;">' + company_author + '</td>\n\
</tr>'
但我在回调函数中遇到的问题,在拖动完成时调用
$("#sort tbody").on("sortupdate", function(event, ui)
{
$('#sort tbody tr').each(function()
{
var tr_id = $(this).attr('id');
$("#order_" + tr_id).val($(this).index() + 1)
});
});
答案 0 :(得分:1)
只需用纯文本替换input元素,然后将id应用于 SNO td
。然后更改sortupdate
事件以更新td
文本而不是输入值:
function allPacsDisplayHTML()
{
var information = response.pacs_order_of_dispaly;
var html = '';
for (var i = 0; i < information.length; i++)
{
var company_id = information[i].company_id;
var orderdp = information[i].order_of_display;
var company_name = information[i].company_name;
var company_author = information[i].company_author;
var incrementi = i + 1;
var orderid = 'order_' + incrementi;
html += '<tr id="' + incrementi + '" company_id="' + company_id + '" style="cursor: move;">\
<td style="vertical-align: middle;" id="'+orderid+'">'+incrementi+'</td>\n\
<td style="vertical-align: middle;">' + company_name + '</td>\n\
<td style="vertical-align: middle;">' + company_author + '</td>\n\
</tr>'
}
$("#sort tbody").html(html);
}
$("#sort tbody").on("sortupdate", function(event, ui)
{
$('#sort tbody tr').each(function()
{
var tr_id = $(this).attr('id');
$("#order_" + tr_id).text($(this).index() + 1);
});
});
检查此更新的jsFiddle。
答案 1 :(得分:0)
试试这个,你需要删除你的输入元素并在td元素上应用id。
更改您的SNO td并按如下方式对其应用订单ID
<td id=" + orderid + ">' + incrementi + '</td>\n\
然后在jQuery上设置该td的值,
$('#sort tbody tr').each(function()
{
var tr_id = $(this).attr('id');
$("td#order_" + tr_id).html($(this).index() + 1)
});