2012-01-20 71 views
0

我想按如下方式使用Django的jQuery庫。域是ID爲id = id_domain的表單,其格式爲id = emailaccount_form。這些ID由django自動生成。django.jQuery與Django admin change_form.html

在jQuery的靜態文件test.js代碼如下:

<script type="text/javascript"> 
(function($){ 
    $(document).ready(function($){ 
    var form = $("emailaccount_form"); 
    var domain = $("id_domain"); 
    //number of domains include null as 1 value 
    alert(domain.length); 
    if ((!domain[0].value) && (domain.length > 1)){ 
     if (domain.length == 2){ 
     //select domain by default as it is the only available choice 
     domain.selectedIndex = 1; 
     alert('Domain ' + domain.value); 
     } 
    } 
    }); 
})(django.jQuery); 
</script> 

在執行時,我發現domain.length值是0,而實際上有在選擇第2個選擇選項。爲什麼?如果顯示爲警報(域),則顯示對象對象而不是對象HTMLSelectElement。

考慮第二種情況一個javascript如下那裏我得到預期的結果:

<script type="text/javascript"> 
    var domain = document.getElementById("{{ adminform.form.domain.auto_id }}"); 
    alert(domain); 
    alert ("Number of domains: " + (domain.length-1)); 
    </script> 

什麼是錯的django.jQuery。誰能指導?另外我如何擺脫選擇框的第一個空白值作爲其中一個選項。我只想使用django.jQuery!

回答

1

你是否僅僅缺少散列標記?請記住,jQuery需要一個前端來選擇ID,而JavaScript的原生getElementById則不需要。

var form = $("#emailaccount_form"); 
var domain = $("#id_domain"); 
+0

洛爾 - 這樣一個簡單的答案,但正確的(我認爲):)良好的漁獲 – WTK

+0

感謝名單在jQuery的 – user956424

+0

只是我第二天還怎麼設置selectedIndex屬性的情況下,僅存在1點的選擇在選擇下拉在jquery – user956424