我正在呈现自定义数据表(版本1.09),并且当用户单击属于该行的“编辑”按钮以显示用户可以操纵的输入框时,需要替换或掩盖单元格的文本数据输入。
示例:
我处理呈现的输入框的方式是在“ fnCreatedCell”函数内部,并且当前的可见性是通过在按钮单击上切换CSS类以将其隐藏来切换的。
我当时正在考虑循环标识按钮所连接的表行,并循环遍历该行上的单元格并将其隐藏,但这会破坏表的样式并使其难看。我需要一种方法来替换内容,或者,如果可以将内容放入“ span”或“ div”中,则可以对其应用相同的可见性类。
是否存在CSS解决方案来隐藏或替换html元素内的文本-但只是暂时的?
代码示例:
(列定义)
{"mData": "suspenseDt", "sTitle": "Suspense Date", "mRender": formatDateToDisplayString,
"fnCreatedCell": function(nTd, sData, oData, iRow, iCol) {
$(nTd).attr('id', "suspenseDt-" + oData.id);
//$(nTd).attr('style', "visibility:hidden;");
$(nTd).append('<input class="input-small hiddenTIF ti-date-pick requiredDate suspenseDate suspenseDT120Range" value="' + sData + '" id="suspenseDtInput-' + oData.id + '"/>');
}},
mRender中的formatDateToDisplayString函数:
function formatDateToDisplayString(date) {
if(date !== null) {
return new Date(date).toLocaleDateString({day: "2-digit", month: "2-digit"});
} else {
return "";
}
}
切换输入框的可见性(当前,输入是“ hiddenTIF”类的唯一内容,但理想情况下,如果避免破坏表的格式,则其内容可以具有此内容或本身)。
$hidden.show().removeClass("hiddenTIF").addClass("visibleTIF");
$visible.hide().removeClass("visibleTIF").addClass("hiddenTIF");
表格列的图像(第一行单击了编辑按钮,如果第二或第三次单击了编辑按钮,输入框也将出现在其中)