我喜欢在如何使用JQuery Validator在submitHandler的上下文中从视图导航到视图的一些输入。我目前正在做的大致是,
class Example.ViewOne extends Backbone.View
template: JST['view_one']
render: ->
@$el.html(template())
@$('form').validate(@.validators)
this
validators:
rules:
name:
required: true
submitHandler: (form) ->
view = new Example.ViewTwo()
view.render()
return false
class Example.ViewTwo extends Backbone.View
template: JST['view_two']
render: ->
@$el.html(@template())
this
class ExampleRouter extends Backbone.Router
routes:
'' : 'index'
index:
view = new Example.ViewOne()
$('#container').html(view.render().el)
主持页面:
...
<div id="container"></div>
....
ViewOne:
...
<h1>View One</h1>
<form>
<input type="text" name="name" />
<button type="submit" />
</form>
...
ViewTwo:
...
<h1>View Two</h1>
...
当我在ViewOne上点击提交后触发并重新呈现ViewOne时会发生什么。我想呈现ViewTwo而不是发布帖子。我必须使用JQuery Validator,据我所知,它需要一个表单标签,因此摆脱表单标签对我来说不是一个解决方案。
另外,我知道在视图中控制工作流程并不是理想的方式,但我现在专注于让简单的工作变得简单,并且当我对Backbone更加熟悉时,我肯定会计划调查更强大的解决方案。