我希望如果用户输入数字数据,它应该保持对齐状态,如果他输入其他数据类型,那么它应该保持对齐。文本对齐我可以给css属性text-align:right。如何在用户输入数据时找到数据类型?我正在使用jquery数据表。
答案 0 :(得分:0)
这不是轨道问题。如果你想根据单元格中内容的性质设置css属性,我强烈建议使用jQuery / Javascript解决方案。
你可以这样做:
$(document).ready(function(){
$("td").each(function() {
if (parseInt($(this).text()) > 1) {
$(this).css("text-align", "right");
}
});
});
对于更复杂的解决方案,您可以实现自己的Jquery过滤器,如:
$.extend($.expr[":"], {
expr: (function() {
var op = {
'=': function(n1, n2) { return n1 == n2; },
'!=': function(n1, n2) { return n1 != n2; },
'>': function(n1, n2) { return n1 > n2; },
'>=': function(n1, n2) { return n1 >= n2; },
'<': function(n1, n2) { return n1 < n2; },
'<=': function(n1, n2) { return n1 <= n2; }
};
var ops = [];
for (p in op) {
ops.push(p);
}
var r = new RegExp("^\\s*(" + ops.join("|") + ")\\s*(-?\\d+(?:\\.\\d+)?)\\s*$");
return function(elem, i, match) {
var m = r.exec(match[3]);
return m && op[m[1]](parseFloat($(elem).text()), parseFloat(m[2]));
};
})()
});
这将允许您根据数字约束过滤值,如:
$("td:expr(>5)").css("text-align", "right");