if request.xhr? format.html { render layout: false} else xxxxxxxx end
为何我 ajax 获取的 partial view,最后还是带了 layout 里面的东西? 我这里设置了 render 不用 layout 的,可是为何还是有呢?
注:找到问题了,我的代码写在了两个 controller 里~应该把这段话加在另一个 controller 里...
xhr? 然后 format.html,这结果我无法预测啊。
#1 楼 @Rei 多谢大神哈,是我自己搞错了,我是有两个 controller,应该写在另一个 controller 里才对~
xhr? 是很古老的写法了,现在写法是:
respond_to do |format| format.html { } format.js { } end
xhr 走的就是 format.js 的 block。
#3 楼 @Rei 顺序要换下才有用 respond_to do |format| format.js { } format.html { } end