I've получил следующее, на мой взгляд:Проблемы с Knockout и ViewModel
<div data-bind="dxTextBox: { onFocusIn: onEnterSearch, placeholder: 'suche...', showClearButton: true , value: ''}"></div>
<div data-bind="dxButton: { onClick: 'SearchCustomer', text: 'suchen' }" style="width:100%;"></div></div>
и это в моем JS файл:
function DoSearch() { alert('DoSearch');}
function clearSearch() {
alert('clearSearch');
}
var viewModel = {
//// Put the binding properties here
SearchCustomer: DoSearch,
onEnterSearch: clearSearch
};
return viewModel;
Но теперь, когда я сосредоточьтесь на текстовом поле, я получаю предупреждение «clearSearch», а onclick на кнопке, я получаю ошибку 404.
Есть ли у кого-нибудь идеи?
Благодаря Патрик
A) Ваш фрагмент кода ничего не производит. B) Если вы получаете ошибку 404 для такой функции, она, вероятно, означает отправку формы. Я не знаком с элементами управления, которые вы используете, но я предполагаю, что если вы проверите свой html, вы увидите форму где-нибудь в нем, и dxButton, вероятно, создаст кнопку отправки, которая вызывает пожар. Если вы можете изменить ko.customBindings, сделайте это, чтобы изменить кнопку на кнопку без отправки. Else, add event.preventDefault и event.stopPropagation для метода doWork, предполагающего событие, - это то, к чему у вас есть доступ в аргументах. – QBM5