在SAPUI5中,没有API来更改表单元格本身的任何内容。下面的代码是在格式化工具中修改单元格和控件的样式,但它们都将style类添加到控件中,而不是td。谁能告诉我如何在表格中改变td样式?
editableFormatter: function(v, control) {
if(sap.ui.getCore().byId("btnEdit").getText()==="Edit") {
control.getParent().getCells()[2].addStyleClass('readonly');
control.addStyleClass('readonly');
}
}发布于 2015-08-26 11:24:29
我不认为你可以使用CSS来应用readOnly。您需要使用JQuery或Javascript将字段设置为readOnly。
示例:
document.getElementById("id").setAttribute("readonly", "true");发布于 2015-08-26 19:56:02
要获得实际的TD DOM对象,首先要获取SAPUI控件,然后使用其jQuery对象获取其DOM父对象:
var td = control.getParent().getCells()[2].$().parent();...and若要为此TD DOM对象设置css样式,请使用标准Javascript:
td.className = td.className + " myCSSStyle";PS注意样式类名前面的空格
发布于 2015-08-27 21:55:59
在文档准备好之后,我们肯定需要操作DOM,我设法使用jquery获得了数据数组和单元格:
for(var i = 0, j = parameters.length; i < j; i++) {
$('#'+table.getId()+'-rows-row'+i+'-col'+idx).addClass('readonly');
}它是有效的,但我想知道是否有更好的解决方案。
致以最好的问候,明泉
https://stackoverflow.com/questions/32207385
复制相似问题