Estoy tratando de configurar la validación con jquery validate, y tengo el modelo de vista regresando del servidor, asignado al cliente y con éxito noqueando js vinculando algunos datos.Knockout + Jquery Validate
Incluí una llamada para validar, pero la validación nunca se desencadena, sin embargo, si pongo una clase en el cuadro de entrada y luego una llamada válida, se desencadena como se esperaba.
¿Alguna idea?
<script type="text/javascript">
var viewModel;
$(document).ready(function() {
$.ajax({
url: 'Home/GetUserData',
type: 'post',
success: function (data) {
viewModel = ko.mapping.fromJS(data);
viewModel.save = function() { sendToServer(); };
ko.applyBindings(viewModel);
main();
}
});
});
function main() {
$("form").validate({
rules: {
birthPlace: {
required: true,
minlength: 2
}
}
});
}
function sendToServer() {
alert($("form").valid());
}
</script>
}
<h2>@ViewBag.Message</h2>
<form id="nameSubmit" action="">
<div>
The name is: <span id="test" data-bind="text: Name"></span>
</div>
<div>
He's <span id="age" data-bind="text: Age"></span>
</div>
<div>
He's from
<input type="text" id="birthPlace" name="birthPlace"/>
</div>
<div>
<button data-bind="click: save">Click Me</button>
</div>
</form>
Pero onkeyup, focus etc no se activa tampoco en mi ejemplo. – RubbleFord
Validar no hace nada onkeyup, foco o cualquier otro evento hasta la primera presentación del formulario. Después de eso, todos esos eventos se desencadenan para cada campo inválido hasta que se solucionen. – Ryley
Eso podría ser, voy a echar un vistazo. – RubbleFord