on ‎2017 Mar 28 4:10 PM
According to the notes we are can use the submit event to trigger a function upon pressing Enter or Carriage Return (keycode 13). Not 100% sure about both keys as I suspect they have different values. I'm using the UI5 API version 1.38.4 so it should work as the 'submit' event was introduced in version 1.33.
Anyway, I have something like:
<input id="something" values ="{rock>serialno}" submit="returnEntered"/> in my XML view code, and in my view controller I have something like:
returnEntered: function() {
//Do something
}
However, when debugging, this function is not being called, or the submit event is NOT being actioned/triggered.
I know there are other ways of doing this using standard JavaScript, but, I would like this triggered from a specific Input field on the view, and ideally using the built-in UI5 options for view/control.
Request clarification before answering.
Please close this thread by using "correct answer" button 🙂
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Resolved this issue.
I had a function like so in my view controller:
returnEntered: function(oEvent){
this.onMySearch(oEvent);
}
and in my view XML I simply had
<Input .... submit="returnEntered"/>But this is something that I originally had in my code, and refused to work. Eclipse can be a strange beast sometimes.
Anyway, all is now okay. Thanks to all those that responded.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
i hope you have entered some value before pressing enter button and make sure the controller is binded to the view.
Best REgards
Mahesh
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Yes, to the question of entering something into the field before hitting the [Enter] key, and, yes to binding, in that I have model bound to the table for <Input> and the input is using the format value="{alias>field}".
So yes, there is a binding from a model to the table within the controller, but the controller is not bound to the XML in the controller, but we do have an entry in the XML like:
controllerName="path.controller.controllerViewName"Hopefully that's what you mean by binding the controller to the view. 😉
In theory though, it should still work for any <Input> without a binding to a model via the controller. But either way, it's not working.
As usual, there is very little out there on this subject, and no examples that I can find for using the submit event with <Input>, using XML.
[Appended later...] I have also tried this code in my controller, but still it does not work:
//Execute the onMySearch function when [Enter] is pressed, to save having to hit the button.
this.getView().byId("searchRef").onsapenter = function() {
onMySearch();
};
| User | Count |
|---|---|
| 9 | |
| 5 | |
| 4 | |
| 4 | |
| 4 | |
| 3 | |
| 3 | |
| 2 | |
| 2 | |
| 2 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.