HTML5 required
атрибут будет не очень помогает в PhoneJS одиночные приложения страницы, потому что его цель состоит в том, чтобы проверить равнину HTML-формы перед провалом.
Вместо этого вы можете реализовать любую логику проверки на уровне модели. Например:
Вид модели:
var myText = ko.observable("");
var isTextBoxValid = ko.computed(function() {
return !/^\s*$/.test(myText());
});
function processData() {
if(!isTextBoxValid())
alert("Validation failed");
// ...
}
return {
myText: myText,
isTextBoxValid: isTextBoxValid,
processData: processData
}
Markup:
<style scoped>
.invalid {
color: red !important;
}
</style>
<div class="dx-fieldset">
<div class="dx-field">
<div class="dx-field-label" data-bind="css: { invalid: !isTextBoxValid() }">Name</div>
<div class="dx-field-value">
<div data-bind="dxTextBox: { value: myText, placeholder: '(required)', valueUpdateEvent: 'keyup' }"></div>
</div>
</div>
<div class="dx-field">
<div data-bind="dxButton: { text: 'Process', clickAction: processData }"></div>
</div>
</div>
Отвечая на ваш вопрос прямо: вы можете найти любой элемент с помощью JQuery и приложить любые атрибуты к нему:
$(...).attr(...);
Не могли бы вы пояснить, что вы подразумеваете под «требованием html5 в dxTextBox»? –
@AlexSkorkin Я думаю, что речь идет о атрибуте 'required' элементов' input': http://www.w3schools.com/tags/att_input_required.asp – amartynov