У меня есть текстовое поле html с событием onkeypress для отправки сообщения, как показано ниже
<input type="text" data-bind="attr:{id: 'txtDim' + $data.userID, onkeypress: $root.sendMsg('#txtDim' + $data.userID, $data)}" />
Я написал функцию javascript для отправки сообщения во время preesing enter, как показано ниже:
self.sendMsg = function (id, data) {
$(id).keydown(function (e) {
if (e.which == 13) {
//method called to send message
//self.SendDIM(data);
}
});
};
В моем случае я должен нажать кнопку ввода 2 раза, чтобы отправить сообщение. 1: keypress call self.sendMsg 2: keypress call self.SendDIM
Но мне нужно отправить сообщение только на одно нажатие. Это можно сделать только на простом javascript. Но мне нужны данные viewmodel, поэтому они применяются в привязке данных. Так что не работает нормально.