WN

WN (https://www.wn.se/forum/index.php)
-   Klientsidans teknologier, design och grafik (https://www.wn.se/forum/forumdisplay.php?f=12)
-   -   Jquery datepicker med asp.net master page (https://www.wn.se/forum/showthread.php?t=1039788)

yadis 2009-12-31 02:40

Jquery datepicker med asp.net master page
 
Jag blir snart tokig.
Koden funkar fint när jag kör i en sida utan master page, men inte med master page.

Koden i masterpagen:
<script src="jquery/jquery-1.3.2.js" type="text/javascript"></script>
<script src="jquery/jquery-ui-1.7.2.custom.min.js" type="text/javascript"></script>

<script type="text/javascript">
$(function() {
$.datepicker.regional['sv'] = { dateFormat: 'yy-mm-dd', firstDay: 1 };
$.datepicker.setDefaults($.datepicker.regional['sv']);
$('#ctl00_ContentPlaceHolderMain_datepickern').dat epicker({
changeMonth: true,
changeYear: true
});
});
</script>


<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<div id="content">


<asp:ContentPlaceHolder ID="ContentPlaceHolderMain" runat="server">

</asp:ContentPlaceHolder>
</div>
</form>


I contentsidan som laddas in i mastern har jag, bland annat, följande:
<asp:TextBox ID="datepickern" runat="server"></asp:TextBox>

Texboxen ovan ligger i sån updatepanel så det blir ajax av det.

När contentsidan laddas i masterpagen så ändras ju ID't på textboxen från "datepickern" till "ctl00_ContentPlaceHolderMain_datepickern'" men det har jag med i beräkningarna i scriptet i master pagen.

När jag kör sidan, i IE, så får jag följande fel:
Microsoft JScript runtime error: '$.datepicker' is null or not an object
...dvs redan på raden som börjar med "$.datepicker.regional..." så smäller det.

Nån som kan ge lite vägledning?

goose 2009-12-31 12:05

sökvägen till jquery? ligger din masterpage i en underkatalog?

lägg till ett extra / för säkerhetskull.

<script src="/jquery/jquery-1.3.2.js" type="text/javascript"></script>
<script src="/jquery/jquery-ui-1.7.2.custom.min.js" type="text/javascript"></script>

yadis 2009-12-31 12:33

Tack för ditt svar.
Att sätta "/" först i sökvägen gjorde ingen skillnad.
Masterpagen o content ligger i roten och sen i jquery-katalogen ligger scripten:

site.master
content.aspx
jquery/jquery-1.3.2.js
jquery/jquery-ui-1.7.2.custom.min.js

...och som sagt sökvägarna o scriptet funkar galant om jag lägger all kod i en .aspx sida utan masterpage. Det är nåt skitfel jag har...men vad? :/

yadis 2009-12-31 21:25

"Löste" sig till sist, men fattar inte varför det måste funka så här.
Fick flytta in följande överst i ContentPlaceHolderMain i contentsidan, sen hoppa datepickern igång. Verkar inte som content "ser" den javascript som är i masterpagen?

<script src="jquery/jquery-1.3.2.js" type="text/javascript"></script>
<script src="jquery/jquery-ui-1.7.2.custom.min.js" type="text/javascript"></script>

<script type="text/javascript">
$(function() {
$.datepicker.regional['sv'] = { dateFormat: 'yy-mm-dd', firstDay: 1 };
$.datepicker.setDefaults($.datepicker.regional['sv']);
$('#ctl00_ContentPlaceHolderMain_datepickern').dat epicker({
changeMonth: true,
changeYear: true
});
});
</script>


Alla tider är GMT +2. Klockan är nu 10:10.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson