2012-10-18 34 views
0

我在我的Rails應用程序中使用了一個form_for視圖中的一個,但由於某種原因,結束標記沒有被生成,並且這將在大多數瀏覽器中安全地處理,除IE 8和更低。Rails 3:form_for失蹤關閉</form>標記

下面是一些示例代碼:

<%= form_for object, :remote => true, :url => remote_update_path, :html => {:name => "form_#{id_number}", :id => "form_#{id_number}"} do |f| %> 
    <%= hidden_field_tag "field_a", object[:field_a] %> 
    <ul class="class1"> 
     <li> <%= f.check_box :field_b, :class => "class2", :id => "b" %> B</li> 
     <li> <%= f.check_box :field_c, :class => "class2", :id => "c" %> C</li> 
    </ul> 
<% end %> 

出於某種原因,這是不產生閉合</form>標籤,其中<% end %>所在。 (我知道現在有提交按鈕的形式,這並不影響缺失</form>。)

這是一個錯誤嗎?還是有什麼我做錯了?

+0

我稱之爲謊言。對不起,我知道這聽起來很刺耳。如果表單標籤放在開始位置,form_for助手不會遺漏表單標籤的末尾。請向我們展示該頁面的完整輸出。 –

+0

我給出的代碼是僞代碼,所以我無法真正爲您提供頁面的確切輸出,但我確信標記不存在。某些瀏覽器(Chrome,Safari)會爲我填寫,但在IE 6,7,8中並非如此。我的整個表單都在​​之內,並且內部沒有​​元素 – laker

+4

我們不可能在沒有看到真實代碼的情況下調試您的問題。如果您需要我們調試您的問題,我們將需要查看您可以提供給我們的最多代碼,以便在您的系統上重現此問題。 –

回答

1

這幾乎可以肯定是由於頁面上的某處HTML無效造成的。運行它通過validator,直到它全部通過,我敢打賭問題消失...

1

我有同樣的問題。它發生在我身上,因爲我沒有在表格中正確關閉一個div標籤。