2008-10-06 29 views
5

我在組織內推廣JQuery方面相當成功。它本身就沒有小小的壯舉。然而,其中一個想法是在這裏啓動,使其成爲我們的應用程序的一部分是創建一個ASP.net服務器端控制。 (我們將在可預見的未來堅持使用WebForms。)我應該爲ASP.net創建一個JQuery服務器控件,以便在我的應用程序中最好地使用它?

我對這種方法並不太狂熱,因爲當一些腳本標記可以完成這項工作時,它看起來像是矯枉過正。我們在網上找到了article,涉及的代碼量似乎並不合理。但是,我確實聽說在服務器控件發生的腳本緩存或生成中有一些好處。

我的問題:

  • 有其他人寫的ASP.net服務器控件就可以提供JQuery的js代碼?
  • 還有人認爲這是一個瘋狂的想法,只是爲了避免編寫JQuery或Javascript代碼?

回答

4

我知道微軟(與諾基亞一起)正在「主流化」jQuery,並將與未來版本的Visual Studio進行整合。您可能想要了解他們將如何正式使用它,以便現在可以定製您的設置,並希望能夠順利過渡到「官方MS jQuery」。

2

我同意你的意見。創建控件並添加JQuery腳本位置是不值得的。

更好的解決方案是讓1個.js文件具有加載頁面所需的所有鏈接。如果這是團隊的問題,這可能會消除.js鏈接的分配。

我唯一可以原諒創建一個自定義控件來鏈接JavaScript的時間是因爲你不想將JavaScript複製到服務器並希望將其嵌入到.dll中。但是,您不會阻止用戶在頁面上看到JavaScript,因爲如果您將這些文件嵌入到.dll中,則必須將它們作爲完整的腳本文件註冊到標題中。

0

我發現Scott Hanselman的blog post帶有一個帶有ASP.net AJAX + JQuery的示例應用程序。這是一個簡單的應用程序,但它包括所有JavaScript腳本標記。我沒有看到使用服務器控件來提供腳本的任何建議。

1

使用服務器控件注入JavaScript引用的一個原因是,更容易控制哪些JavaScript文件被添加到頁面中。想象一下你使用jQuery核心,再加上jQuery UI和一些其他插件的場景。根據您對此控件的編碼方式,您可以讓開發人員輕鬆選擇特定頁面所需的功能,而無需擔心所需的特定腳本。這種方法將讓你很多的靈活性分割你的應用:例如服務器控件可能是由母版頁,一個子頁面,用戶控件或其他服務器控件使用。如果母版頁註冊了一個jQuery庫的需求,但子頁面或其中一個用戶控件需要額外的庫,那麼使用統一的API會使這一過程變得簡單。就我個人而言,我相信這最好由輔助庫而不是服務器控制來處理。

底線是你多麼希望每一個開發者重新發明輪子或使用常見的,簡單易用的API,它在你的應用程序強制執行的一致性。

+0

我可以看到這種情況,但是值得編寫更多代碼來管理其他代碼嗎?我不是這個想法的忠實粉絲,所以我試圖在某處找到一些優點。 – casademora 2008-10-07 01:33:19

相關問題