2010-07-22 85 views
4

在我的項目的網頁上主頁和內容頁基地......

我想要做的JavaScript的東西(而後比的jquery)在內容頁面中的一個 所有主內容元素的完全 LOADED(對於

例如將焦點設置radcombobox控件控制)對於這樣做,我用下面的代碼:

<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server"> 

    <script src="../JQuery/jquery-1.4.1.js" language="javascript" type="text/javascript"></script> 


    <script type="text/javascript"> 

     onload = onloadOfDocument; 

     function onloadOfDocument() { 

      var combo = $find("<%= RadcbPersonelCompleteNameInvwNoskhehEdit.ClientID %>"); 
      alert(combo); 
      var comboInput = combo.get_inputDomElement(); 
      comboInput.focus(); 
     } 

    </script> 
</asp:Content> 

但是alert(combo);總是返回null(該$find代碼爲Telerik控制和約Telerik控制上部碼是完全真實)

爲了解決這個問題null I測試如下所示的方式:

1- 我刪除了所有的從主站和內容頁面控件除了radcombobox控件控制和無效的問題消失了,所以我得到的空peoblem是所有主和內容頁面的元素都沒有被加載時

$find("<%= RadcbPersonelCompleteNameInvwNoskhehEdit.ClientID %>");

被解僱。

2- 所以我用

$(document).ready(function() { my codes });

代替

onload = onloadOfDocument;

,但問題沒有解決 - 我不知道爲什麼!

3- 最後我測試下面的代碼和它完美的作品:

<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server"> 

<script src="../JQuery/jquery-1.4.1.js" language="javascript" type="text/javascript"></script> 


<script type="text/javascript"> 

    //onload = onloadOfDocument; 
     document.onkeyup = onkeyupOfDocument; 

    function onkeyupOfDocument() { 

     var combo = $find("<%= RadcbPersonelCompleteNameInvwNoskhehEdit.ClientID %>"); 
     alert(combo); 
     var comboInput = combo.get_inputDomElement(); 
     comboInput.focus(); 
    } 

</script> 

我應該使用什麼功能的文檔後,所有的主控和內容元素做一些JavaScript代碼完全加載

由於在未來提前

+0

請參閱http://stackoverflow.com/questions/760762/jquery-supports-function-pageload-and-ready/2469913#2469913 – 2010-07-22 09:12:04

回答

0

豈不是:

var combo=$("#<%= RadcbPersonelCompleteNameInvwNoskhehEdit.ClientID %>")[0]; 

(假設RadcbPersonelCompleteNameInvwNoskhehEdit.ClientID解析爲元素在DOM id屬性)

+0

這就是我所認爲的問題。 最簡單的方法來檢查$(document).ready(function(){});正在工作的是添加一個警報...然後添加你想要在那裏運行的代碼。 它提供了一個簡單而乾淨的方式來確定是否加載jQuery。 – 2010-07-22 08:20:52

+0

var combo = $(「#<%= RadcbPersonelCompleteNameInvwNoskhehEdit.ClientID%>」)[0]; - >此語法不正確... ============= 我測試$(document).ready(function(){});警報和警報工作正常 - 但$發現仍然返回空... – MoonLight 2010-07-22 08:34:58

+0

嗯。爲什麼它不正確?你想做什麼?獲取ID爲RadcbPersonelCompleteNameInvwNoskhehEdit.ClientID的元素,還是我誤解?我以前從未見過$。 – spender 2010-07-22 08:39:40

相關問題