🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.javascript
3 messages
3 total messages Started by BooB Wed, 17 Oct 2012 23:32
zasięg zmiennych
#51199
Author: BooB
Date: Wed, 17 Oct 2012 23:32
62 lines
4206 bytes
witam
poproszę o podpowiedź.
generalnie chodzi o panel according składający się z dwóch paneli a w nich po 5 checkboxów .
potrzebuję aby 

onclick na checkboxie od 1 do 5 zrobił submit i otworzył panel 1 zaś
onclick na checkboxie od 6 do 10 zrobił submit i otworzył panel 2
submit potrzebuje aby zapamiętać które chceckboxy zostały zaznaczone
jeśli na sztywno wpiszę w spyaccording.js this.defaultPanel = aw; //gdzie aw to 0 lub 1
to działa.
teraz trochę kodu:
<script type="text/javascript">
<!--
aw=0;//poczatkowy stan according
function uruchom1(){aw=0;}
function uruchom2(){aw=0;}
function uruchom3(){aw=0;}
function uruchom4(){aw=0;}
function uruchom5(){aw=0;}
function uruchom6(){aw=1;}
function uruchom7(){aw=1;}
function uruchom8(){aw=1;}
function uruchom9(){aw=1;}
function uruchom10(){aw=1;}
-->
</script>
<script type="text/javascript">
<!--
//i tutaj ponizej zabawa.pomimo że aw===1 to pokaże zawsze panel 0.
if(aw===0){uruchom5();}//może być uruchom1,2,3,4 bez znaczenia
if(aw===1){uruchom6();}// to samo tutaj uruchom7,8,9,10 
-->
</script>
<script src="SpryAssets/SpryAccordion.js" type="text/javascript"></script>
<FORM NAME ="form1" METHOD ="POST" ACTION ="box1.php">
<div id="Accordion1" class="Accordion" tabindex="0">
  <div class="AccordionPanel">
    <div class="AccordionPanelTab">Label 1</div>
    <div class="AccordionPanelContent">
<Input type = 'Checkbox' Name ="ch[1]" value ="chanel1" <? echo $ch[1]; ?> onclick="uruchom1()"  onChange="submit()"  >Visual Basic .NET <P>
<Input type = 'Checkbox' Name ="ch[2]" value="chanel1" <? echo $ch[2]; ?> onclick="uruchom2()"  onChange="submit()"  >Microsoft Word <P>
<Input type = 'Checkbox' Name ="ch[3]" value="chanel1" <? echo $ch[3]; ?> onclick="uruchom3()"  onChange="submit()"  >Microsoft Excel <P>
<Input type = 'Checkbox' Name ="ch[4]" value="chanel1" <? echo $ch[4]; ?> onclick="uruchom4()"  onChange="submit()"  >Web Design <P>
<Input type = 'Checkbox' Name ="ch[5]" value="chanel1" <? echo $ch[5]; ?> onclick="uruchom5()"  onChange="submit()"  >PHP for the Beginner <P>
</div>
  </div>
  <div class="AccordionPanel">
    <div class="AccordionPanelTab">Label 2</div>
    <div class="AccordionPanelContent">
<Input type = 'Checkbox' Name ="ch[6]" value ="chanel2" <? echo $ch[6]; ?> onclick="uruchom6()"  onChange="submit()"  >Visual Basic .NET <P>
<Input type = 'Checkbox' Name ="ch[7]" value="chanel2" <? echo $ch[7]; ?> onclick="uruchom7()"  onChange="submit()"  >Microsoft Word <P>
<Input type = 'Checkbox' Name ="ch[8]" value="chanel2" <? echo $ch[8]; ?> onclick="uruchom8()"  onChange="submit()"  >Microsoft Excel <P>
<Input type = 'Checkbox' Name ="ch[9]" value="chanel2" <? echo $ch[9]; ?> onclick="uruchom9()"  onChange="submit()"  >Web Design <P>
<Input type = 'Checkbox' Name ="ch[10]" value="chanel2" <? echo $ch[10]; ?> onclick="uruchom10()"  onChange="submit()"  >PHP for the Beginner <P>
</div>
  </div>
</div>
<script type="text/javascript">
<!--
var Accordion1 = new Spry.Widget.Accordion("Accordion1");
//-->
</script>
Re: zasięg zmiennych
#51201
Author: TOUDIdel
Date: Thu, 18 Oct 2012 13:30
15 lines
1387 bytes
W dniu 18.10.2012 01:32, BooB pisze:
> function uruchom1(){aw=0;}
> function uruchom2(){aw=0;}
> function uruchom3(){aw=0;}
> function uruchom4(){aw=0;}
> function uruchom5(){aw=0;}
> function uruchom6(){aw=1;}
> function uruchom7(){aw=1;}
> function uruchom8(){aw=1;}
> function uruchom9(){aw=1;}
> function uruchom10(){aw=1;}

Przede wszystkim lepiej zamiast 10 funkcji robiących to samo mieć jedną.
-- 
td
Re: zasięg zmiennych
#51200
Author: BooB
Date: Thu, 18 Oct 2012 18:36
129 lines
5243 bytes
W dniu czwartek, 18 października 2012 01:32:30 UTC+2 użytkownik BooB napisał:
> witam
> 
> poproszę o podpowiedź.
> 
> generalnie chodzi o panel according składający się z dwóch paneli a w nich po 5 checkboxów .
> 
> potrzebuję aby 
> 
> 
> 
> onclick na checkboxie od 1 do 5 zrobił submit i otworzył panel 1 zaś
> 
> onclick na checkboxie od 6 do 10 zrobił submit i otworzył panel 2
> 
> submit potrzebuje aby zapamiętać które chceckboxy zostały zaznaczone
> 
> jeśli na sztywno wpiszę w spyaccording.js this.defaultPanel = aw; //gdzie aw to 0 lub 1
> 
> to działa.
> 
> teraz trochę kodu:
> 
> <script type="text/javascript">
> 
> <!--
> 
> aw=0;//poczatkowy stan according
> 
> function uruchom1(){aw=0;}
> 
> function uruchom2(){aw=0;}
> 
> function uruchom3(){aw=0;}
> 
> function uruchom4(){aw=0;}
> 
> function uruchom5(){aw=0;}
> 
> function uruchom6(){aw=1;}
> 
> function uruchom7(){aw=1;}
> 
> function uruchom8(){aw=1;}
> 
> function uruchom9(){aw=1;}
> 
> function uruchom10(){aw=1;}
> 
> -->
> 
> </script>
> 
> <script type="text/javascript">
> 
> <!--
> 
> //i tutaj ponizej zabawa.pomimo że aw===1 to pokaże zawsze panel 0.
> 
> if(aw===0){uruchom5();}//może być uruchom1,2,3,4 bez znaczenia
> 
> if(aw===1){uruchom6();}// to samo tutaj uruchom7,8,9,10 
> 
> -->
> 
> </script>
> 
> <script src="SpryAssets/SpryAccordion.js" type="text/javascript"></script>
> 
> <FORM NAME ="form1" METHOD ="POST" ACTION ="box1.php">
> 
> <div id="Accordion1" class="Accordion" tabindex="0">
> 
>   <div class="AccordionPanel">
> 
>     <div class="AccordionPanelTab">Label 1</div>
> 
>     <div class="AccordionPanelContent">
> 
> <Input type = 'Checkbox' Name ="ch[1]" value ="chanel1" <? echo $ch[1]; ?> onclick="uruchom1()"  onChange="submit()"  >Visual Basic .NET <P>
> 
> <Input type = 'Checkbox' Name ="ch[2]" value="chanel1" <? echo $ch[2]; ?> onclick="uruchom2()"  onChange="submit()"  >Microsoft Word <P>
> 
> <Input type = 'Checkbox' Name ="ch[3]" value="chanel1" <? echo $ch[3]; ?> onclick="uruchom3()"  onChange="submit()"  >Microsoft Excel <P>
> 
> <Input type = 'Checkbox' Name ="ch[4]" value="chanel1" <? echo $ch[4]; ?> onclick="uruchom4()"  onChange="submit()"  >Web Design <P>
> 
> <Input type = 'Checkbox' Name ="ch[5]" value="chanel1" <? echo $ch[5]; ?> onclick="uruchom5()"  onChange="submit()"  >PHP for the Beginner <P>
> 
> </div>
> 
>   </div>
> 
>   <div class="AccordionPanel">
> 
>     <div class="AccordionPanelTab">Label 2</div>
> 
>     <div class="AccordionPanelContent">
> 
> <Input type = 'Checkbox' Name ="ch[6]" value ="chanel2" <? echo $ch[6]; ?> onclick="uruchom6()"  onChange="submit()"  >Visual Basic .NET <P>
> 
> <Input type = 'Checkbox' Name ="ch[7]" value="chanel2" <? echo $ch[7]; ?> onclick="uruchom7()"  onChange="submit()"  >Microsoft Word <P>
> 
> <Input type = 'Checkbox' Name ="ch[8]" value="chanel2" <? echo $ch[8]; ?> onclick="uruchom8()"  onChange="submit()"  >Microsoft Excel <P>
> 
> <Input type = 'Checkbox' Name ="ch[9]" value="chanel2" <? echo $ch[9]; ?> onclick="uruchom9()"  onChange="submit()"  >Web Design <P>
> 
> <Input type = 'Checkbox' Name ="ch[10]" value="chanel2" <? echo $ch[10]; ?> onclick="uruchom10()"  onChange="submit()"  >PHP for the Beginner <P>
> 
> </div>
> 
>   </div>
> 
> </div>
> 
> <script type="text/javascript">
> 
> <!--
> 
> var Accordion1 = new Spry.Widget.Accordion("Accordion1");
> 
> //-->
> 
> </script>

kombinowałem tez z jedną funkcją , lecz efekt był taki sam .
dałem wcześniej odwołanie tylko do dwóch funkcji z aw=0 i aw=1 .
problem z tym , że na jednej stronie działa . lecz w połączeniu lub rozbiciu na dwa panele który jeden się chowa a drugi nie to juz jest kłopot .
W jednym panelu potrzebuję zaznaczyć jakies checkboxy i w drugim oraz na tej samej stronie pokazać co zostało zaznaczone i w końcu zrobić submit.
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads