PDA

View Full Version : سوال: چرا jquery کنترل های تلریک را نمیشناسه؟؟



r_khan
شنبه 12 شهریور 1390, 11:31 صبح
کد زیر برای کنترل های تلریک کار نمیکنه ولی برای کنترل های خود دات نت کار میکنه ایا باید جور دیگری نوشت



$('#<%=RadTextBox1.ClientID%>').focus();

محمد متاله
سه شنبه 15 شهریور 1390, 18:27 عصر
با سلام
کدتان برای کار بر روی آبجکت خاصی با ID مشخصی درست می باشد اما بنده در اینجا روش کلی کار را عرض می کنم و در آخر روشی که باعث می شود در صفحات حاوی کنترل های Telerik Rad Control نیز کار کنند.
ابتدا شما می بایست کدهای زیر را در قسمت Head مربوط به صفحه aspx تان اضافه کنید تا فایل JQuery تان در هنگام بارگزاری صفحه بارگزاری شود.


<head runat="server">
<title></title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<script src="Scripts/jquery-1.4.1.js" type="text/javascript"></script>
</head>فایل JQuery بالا همان فایل JQuery ای هست که Telerik در فولدر Script قرار داده است اما شما می توانید ورژن بالاتری از JQuery را از سایت jquery.com دانلود کرده و آن را در این پوشه قرار دهید و به جای لینک دادن به فایل Jquer ای که خود تلریک داستفاده می کند از نسخه های کاملتر آن استفاده کنید اما در هر حال وقتی که شما لینکی به فایل JQuery در صفحه تان که حاوی کنترل های Telerik می باشد قرار می دهید مشکلی ایجاد می کند چون خود تلریک از JQuery استفاده می کند و در اینجا برخوردی بین فایلی که خود کنترل های Telerik بارگزاری می کنند ایجاد می شود (به نظرم کنترل RadScriptManager فایل JQuery را بارگزاری می کند) روش اصولی برای جلوگیری از این کار این هست که از کد زیر استفاده کنید.


jQuery.noConflict()(function(){
// code using jQuery
});

اما باز هم بنده که امتحان کردم جواب نداد در نهایت کدهایی را که در تگ script قرار داده بودم را در آخر صفحه دقیقا قبل از اینکه تک فرم بخواهد بسته شود <form/> قرار دادم که خوشبختانه به خوبی کار کرد فقط به یاد داشته باشید اگر می خواهید که کدتان بر روی کلاس خاصی کار کند می بایست به جای # از . استفاده کنید و اگر هم می خواهید بر روی تگ های خاصی کدتان کار کند از و یا # استفاه نکنید

بنده کدهای زیر را قبل از تگ <form/> قرار دادم که باعث تغییر رنگ صفحه می شود و همچنین Telerik Menu یی را که در صفحه قرار داده ام را در مدت 2 ثانیه محو و سپس در مدت 2 ثانیه آن را نمایش می دهد


<script type="text/javascript" language="javascript">
$(document).ready(function () {
$("body").css("background-color", "red");
$("#<%= RadMenu1.ClientID %>").hide(2000);
$("#<%= RadMenu1.ClientID %>").show(2000);
});
</script>