Я хочу установить фокус на поле ввода в строке в таблице. Как я могу прочитать ИД этой строки и установить фокус?Как установить фокус на поле ввода в sap.ui.table.Table
for(var i = 0; i < rowCount; i++) {
var oEntry = this.getView().getModel("items").getProperty(
oTable.getContextByIndex(i).sPath);
if (oEntry.Field1 === sField1){
//Here I will set the focus in an Input field
}
}
Благодаря
Edit:
<columns>
<Column width="2rem" sortProperty="Field">
<m:Label text="{i18n>Field}" />
<template>
<m:CheckBox
selected="{
path: 'items>Field',
type: 'sap.ui.model.type.String'
}"
editable="false" />
</template>
</Column>
<Column width="6rem">
<m:Label text="{i18n>Field1}" />
<template>
<m:Text text="{items>Field1}" />
</template>
</Column>
<Column width="6rem">
<m:Label text="{i18n>Field2}" />
<template>
<m:Input
value="{items>Field2}" />
</template>
</Column>
Это те столбцы моей таблицы в представлении: Я хочу, чтобы сосредоточить внимание на линии, где FIELD1 = s.Field1. Как установить идентификатор в специальной строке?
Edit 2,0:
XML Вид:
<Column width="6rem">
<m:Label text="{i18n>Field2}" />
<template>
<m:Input
id="input2" value="{items>Field2}"/>
</template>
</Column>
Контроллер:
for(var i = 0; i < rowCount; i++) {
var oEntry = this.getView().getModel("items").getProperty(
oTable.getContextByIndex(i).sPath);
if (oEntry.Field1 === sField1){
this.getView().byId("input2").focus();
}
}
this.getView().getModel("items").refresh(true);
Спасибо, но как я могу выбрать правильную строку в таблице? – Mario
введите идентификатор входной строки, к которой вы хотите получить доступ, и вы можете найти ее в любой строке кода, используя метод '.byId (« ваш идентификатор здесь »). Сначала вы должны получить ссылку на текущее представление, возможно, используя 'this.getView()'. проверьте мое редактирование выше – Developer
Спасибо, я отредактировал сообщение с более подробной информацией. Где я могу установить идентификатор в строке? – Mario