Piszę kontrolkę serwera, która jest polem wyszukiwania z sugestiami (gdy użytkownik zacznie pisać, pojawią się pasujące słowa, aby je zaznaczyć). Używam jquery i C#.Jak osadzić JQuery w niestandardowym sterowaniu serwerem
Kontrola działa poprawnie, gdy dołączę jquery Lib na stronie, na której testuję. Jednak nie będzie działać, gdy spróbuję osadzić bibliotekę w bibliotece DLL.
Próbowałem całkowicie osadzenie go i rejestracji skryptu:
ClientScriptManager manager = this.Page.ClientScript;
manager.RegisterClientScriptResource(typeof(Search), jqueryResource); //jqueryResource= SearchControl.javascript.jquery.js
i ja również próbowałem po prostu dodając tag w nagłówku strony, która zawiera jQuery:
string javascriptUrl = manager.GetWebResourceUrl(typeof(Search), jqueryResource);
LiteralControl jquery = new LiteralControl(string.Format(javascriptInclude, jqueryUrl));
Page.Header.Controls.Add(jquery);
Both sposoby powodują błędy javascript (oczekiwany obiekt) podczas próby uzyskania informacji z formantów
var params = $("#searchBox").val(); //called on keyup when typing in textbox
Czy ktoś już to zrobił? Czy to możliwe? Czy ktoś może rzucić trochę światła na to?
PS: Złożenia są już zarejestrowane w pliku AssemblyInfo.cs.
To jest dokładnie to, co zrobiłem na początku i nadal nie działa. Potem coś kliknęło, a ja kontynuowałem to rozważanie. Spojrzałem na akcję budowania pliku skryptu i Zgadnij co? Zgadza się, zapomniałem ustawić ten na osadzony zasób (Myślisz, że zrobiłby to podczas rejestracji złożeń). W każdym razie teraz działa jak urok. Dzięki za pomoc! –
Wiedziałem, że powinienem był o tym wspomnieć! Doh. – GenericTypeTea
Dziękujemy za przypomnienie o ustawieniu zasobu do osadzenia. To doprowadzało mnie do szału. –