表单提交错误后显示基于Ajax的元素

表单提交错误后显示基于Ajax的元素,第1张

表单提交错误后显示基于Ajax的元素

我解决了问题,并获得了基于AJAX的元素来维护状态。这是我的jQuery代码:

$('#before_category_select').loadPage();jQuery.fn.loadPage = function(){if($("#new-post-area").length > 0){    $.getJSON('/home/cat_select_state.json', function(data){        $.get('/posts/update_sub_cat/' + data.cat_state, function(data1){$("#sub-category-select").html(data1);        })    });   }}

我为获取select元素的状态而调用的控制器 *** 作,该 *** 作在页面提交时存储为会话变量:

  def cat_select_state    @cat_session = {:cat_state => session[:new_post_category], :sub_cat_state => session[:new_post_sub_category]}    respond_to do |format|      format.json {render :json => @cat_session}    end  end

最后,我为选择框使用了默认值,这些默认值存储为会话变量。如果会话变量为null,则默认值为选择框的提示消息。

<%= collection_select :post_category, :id, @categories, :id, :name,     options = {:prompt => "Select a category", :selected => session[:new_post_category]} %>

子类别选择元素的HTML呈现在javascript文件update_sub_cat.js.erb中。

sub-category <%= collection_select :post_sub_category, :id, @sub_categories, :id, :name,        options = {:prompt => "Select a sub-category"} %>

请提出您是否还有其他改进建议。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5505935.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-12
下一篇 2022-12-13

发表评论

登录后才能评论

评论列表(0条)

保存