2012-04-23 64 views
0

嗨我在我的一個應用程序中使用django評論。我定製了評論框架以適應我的需求。一切正常,直到我使用dojo爲可擴展的評論製作文本區域http://dojotoolkit.org/reference-guide/1.7/dijit/form/Textarea.html#dijit-form-textarea。添加腳本後,表單在提交後會引發錯誤:此字段是必需的。所以看起來django不會將textarea識別爲表單的一部分。爲什麼一個DOJO工具文本區域控制打破我的表格

在我的模板我使用的是非標準意見標籤:

{% render_comment_form for event %} 
{% render_comment_list for event %} 

當我加入道場腳本,textarea的得到擴張,但形式不通過它的價值了。

dojo.require("dijit.form.Textarea"); 

dojo.ready(function(){ 
    var textarea = new dijit.form.Textarea({ 
     name: "id_comment", 
     style: "width:200px;" 
    }, "id_comment"); 
}); 

dojo向textarea中添加了一堆類,使其看起來像下面的樣子。但它仍然是id,它仍然是一個textarea,不是嗎?

<textarea autocomplete="off" data-dojo-attach-point="focusNode,containerNode,textbox" name="id_comment" class="dijitTextBox dijitTextArea dijitExpandingTextArea" style="overflow-y: hidden; overflow-x: auto; -moz-box-sizing: border-box; width: 200px; height: 36px;" tabindex="0" id="id_comment" widgetid="id_comment" value="" rows="1"></textarea> 

看完這個問題的答案:Searching for the Ultimate Resizing Textarea。我認爲這可能是最好的方式,但不幸的是它不是。 我想知道如果它只是我。有沒有一種方法可以解決這個問題,或者我應該使用不同的方法來使該領域可擴展。

編輯

與道場後看起來像這樣:

content_type cylebrations.image 
csrfmiddlewaretoken 24827190efbb5b7793aeadaf8276beed 
honeypot  
id_comment ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss 
object_pk 4 
post Post 
security_hash 8a091cfbf1e309627369069d4f71c21b33843a85 
timestamp 1335209980 

無道場:

comment eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee 
content_type cylebrations.image 
csrfmiddlewaretoken 24827190efbb5b7793aeadaf8276beed 
honeypot  
object_pk 4 
post Post 
security_hash e02d8261f528cfc0f22ee30ced820cfbb80715bc 
timestamp 1335210114 
+0

您可以攔截(使用Firebug)提交評論時的發佈數據嗎?它在嗎?特別注意它是否存在,並且它的值不是空的。 – 2012-04-23 05:11:26

回答

0

道場覆蓋textarea的名字。我稱它爲id_comment,而不是僅僅評論。改變後,該職位看起來很好,一切工作就像它應該:

dojo.require("dijit.form.Textarea"); 

    dojo.ready(function(){ 
     var textarea = new dijit.form.Textarea({ 
      name: "comment", 
      style: "width:200px;" 
    }, "id_comment"); 
}); 
相關問題