如何实现这个嵌套的linked_to_function



在我看来,我希望用户能够浏览产品目录。层次结构如下:

Category
  Product
    AdditionalInfoForm

在我的主视图中,我渲染了一个部分的类别:

#opContent
  = render :partial => 'op_main_categories'

op_main_categories部分定义如下:

- @controller.getPortalCategories.each do |c|
  = link_to_function "#{c.name}", :class => 'opCategoryHeaderText' do |page| 
    - partial = escape_javascript(render :partial => 'op_secondary_categories', :locals => { :c => c })
    - page << "$('opContent').update("#{partial}")"

当用户单击上述部分中的链接时,产品将通过op_secondary_categories部分呈现:

 - @controller.getPortalProductsForCategory(c).each do |p|
   = link_to_function "#{p.name}", :class => 'opCategoryHeaderText' do |page| 
     - partial = escape_javascript(render :partial => 'op_did_line', :locals => { :p => p })
     - page << "$('opContent').update("#{partial}")"

op_did_line现在是纯文本:

%p Yes, this is form! Hello?

此设置将生成以下链接(针对一个类别):

<a class="opCategoryHeaderText" onclick="$('opContent').update("<a class="opCategoryHeaderText" href="#" onclick="$('opContent').update("<p>Yes, this is form! Hello?</p>n"); return false;">IPSDN + PVC 3yr</a>n<a class="opCategoryHeaderText" href="#" onclick="$('opContent').update("<p>Yes, this is form! Hello?</p>n"); return false;">PVC</a>n"); return false;" href="#">PVC</a>

添加link_to_function的第二层会中断所有代码。我不能再浏览层次结构了。当只有一个link_to_function存在时,我可以浏览。

这个项目仍然使用Rails 2.3。实现这一点的更好方法是什么?

使用页面中的答案解决了我的问题。insert_html不通过"Jose"使用link_to_function (rails)插入html

答案中提供的代码放在rails/lib/rails_ext中。rb

相关内容

  • 没有找到相关文章

最新更新