我在货币选项卡中的数据表排序有问题。当我尝试对货币/价格列进行排序时…
交货
A - $ 10,0000
B - $ 4,000
C - $ 8,000
在Chrome:
它工作正常,它显示正确的答案。即BCA
升序
在Mozilla和IE中:
它不显示正确的答案,而是显示这个答案ACB
升序。我相信它会读取自moz以来的第二低的数字,iE会读取$符号作为字符串的一部分。
有解决方案吗?
你可以试试我找到的这个示例链接在Chrome和Mozilla中打开
我刚刚解决了我的问题。
而不是为货币插件创建一个扩展的.js文件,这会导致错误…我编写代码与创建数据表对象。像这样:
$(document).ready(function(){
model_select();
$('.data_table').dataTable({
"bJQueryUI": true,
"sPaginationType": "full_numbers",
"bRetrieve":true,
"aoColumnDefs": [
{ "sType": "currency", "aTargets": [ 10 ] }
]
});
// Change this list to the valid characters you want
var validChars = "$£€c0123456789-,";
// Init the regex just once for speed - it is "closure locked"
var str = jQuery.fn.dataTableExt.oApi._fnEscapeRegex("$£€c0123456789-,");
var re = new RegExp('[^'+str+']');
jQuery.fn.dataTableExt.aTypes.unshift(
function ( data )
{
if ( typeof data !== 'string' || re.test(data) ) {
return null;
}
return 'currency';
}
);
});