0

我认为有以下几点

<%= content_tag :p, :class => "title-choose" do %>
         Select image or 
            <%=content_tag :div, :class =>"inputReplacement" do %>
                <%= form_for @upload, :remote => true, :html => { :multipart => true, :method => :post, :id => 'uploadForm', :class => "hiddenInput", :size => 13 } do |f| %>
                    <%= f.file_field :photo %>
                <% end %>
                add image from your computer:
            <% end %>
        <% end%>

生成以下html:

<p class="title-choose"> Select image or </p>
<div class="inputReplacement">
<form id="uploadForm" class="hiddenInput" size="13" method="post" enctype="multipart/form-data" data-remote="true" action="/uploads" accept-charset="UTF-8">
<div style="margin:0;padding:0;display:inline">
<input id="upload_photo" type="file" name="upload[photo]">
</form>
add image from your computer:
</div>
<p></p>

这不是我想要的。我希望将 div 包裹在 p 中。

任何人都知道如何使用 content_tag 做到这一点?

谢谢

米奇

4

1 回答 1

0

当我将您的视图代码粘贴到我的 Rails 3.0.7 应用程序视图index.html.erb中时( -- 命名很重要),我已正确嵌套:

<p class="title-choose">
         Select image or 
            <div class="inputReplacement">
                <form accept-charset="UTF-8" action="/globalize/translations" class="hiddenInput" data-remote="true" enctype="multipart/form-data" id="uploadForm" method="post" size="13"><div style="margin:0;padding:0;display:inline"><input name="utf8" type="hidden" value="&#x2713;" /><input name="authenticity_token" type="hidden" value="f9/6FmfCO7ezrhaUMOp+d7xOti+6UcvgzQq7M5u9HFU=" /></div>
                    <input id="globalize_translation_photo" name="globalize_translation[photo]" type="file" />
</form>                add image from your computer:
</div></p>

只是不要介意我的@upload对象不同。

是的,你真的应该<p>在 s 中嵌套标签<div>,而不是相反。

于 2011-08-04T08:19:59.540 回答