ユーザーが数値データを入力する場合は左揃えにし、他のデータ型を入力する場合は左揃えにする必要があります。テキストの整列cssプロパティにtext-align:rightを指定できます。ユーザーがデータを入力するときにデータ型を見つけるにはどうすればよいですか?私はjqueryデータテーブルを使用しています。
質問する
252 次
1 に答える
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");
于 2012-09-21T11:59:41.127 に答える