Avatar billede laurents Nybegynder
17. juni 2010 - 21:19 Der er 4 kommentarer og
1 løsning

java script loader div's, men har brug for at vide hvilken div der er anvendt.

Hej,

Jeg har et java script som - baseret på et valg i drop down - viser een af 16 (eller derover) div's i mit asp dokument. Disse divs representer et formfelt, hvor man hælder lidt info ind som senere smides i en database.

Mit problem er, at disse formfelter alle har samme navn, så når jeg forsøger at sende data til databasen - så får jeg OLE DB Multiple step ..... fejl...

Findes der en måde hvorpå jeg kan destingvere hvilket div der aktivt er anvendt til at taste data ind i, så jeg senere kan checke dette inden jeg smider dette i databasen?

Her er mit java script (en .js. fil):
//set last shown pointer to none
var kar = 0
var sP = new Array(8)

sP[0] = "Title0";
sP[1] = "Title1";
sP[2] = "Title2";
sP[3] = "Title3";
sP[4] = "Title4";
sP[5] = "Title5";
sP[6] = "Title6";
sP[7] = "Title7";
sP[8] = "Title8";




function ShowDivP2(SelId, DivId, P2Id, ReqVal)
        {       
        num = document.getElementById(SelId).value;
        document.getElementById(P2Id).style.display = 'none';

        if( kar > 0)       
            {
            //clear last shown
            //get division
            var DivId1 = DivId + kar;
            //change display to none
            document.getElementById(DivId1).style.display = 'none';
            kar = 0
            }
       
        if( num > 0)           
            {
                //get division
                var DivId2 = DivId + num;
               
                //change display to block
                document.getElementById(DivId2).style.display = 'block';
                document.getElementById(P2Id).style.display = 'block';
                kar=num
            }
       
        //set required field value relaed to select to array string based on num
        document.getElementById(ReqVal).value = sP[num]
        }

function ShowSub(SSelId, SDivId)
        {       
        Snum = document.getElementById(SSelId).value
               
        if( Snum == 1)
            {
            //change display to block
            document.getElementById(SDivId).style.display = 'block';
            }
           
        if( Snum == 0)
            {
            //change display to none
            document.getElementById(SDivId).style.display = 'none';
            }
        }


og her er koden i asp dokumentet:
<script src="/includes/JS/news_showboxtext.js" type="text/javascript"></script>
<body onload="java script: ShowDivP2('catItems','divSubcat','divp2','req1');" style="width:595;">

<DIV id=divSubcat1 style="DISPLAY: none">
                                                    <table background="../images/boxe_bot_small.jpg">
                                                        <tr>
                                                            <td class="bundtekst_small" valign="top">
                                                                <textarea name="teaser" id="teaser"><%=Rs("teaser")%></textarea>
                                                            </td>
                                                        </tr>
                                                    </table>
                                                </DIV>

                                                <DIV id=divSubcat2 style="DISPLAY: none">
                                                    <table background="../images/boxe_bot_small.jpg">
                                                        <tr>
                                                            <td class="bundtekst_small" valign="top">
                                                                <textarea name="teaser" id="teaser"><%=Rs("teaser")%></textarea>
                                                            </td>
                                                        </tr>
                                                    </table>
                                                </DIV>

o.s.v.

Håber der er een derude som kan gennemskue dette ....

Mange hils
Henrik
Avatar billede claes57 Ekspert
17. juni 2010 - 21:27 #1
Kan man ikke lade drop-down udfylde et hidden-felt med de manglende data i samme formular (noget onChange...), så du fra asp kan aflæse det?
Avatar billede laurents Nybegynder
17. juni 2010 - 21:56 #2
det lyder sq som den helt rigtige løsning - den havde jeg SLET ikke tænkt ;-)

Er det en kodestump du kan ryste ud af ærmet sår'n lige (jeg har set mig meget træt på kode tror jeg, for jeg kan ikke lige få det til at spille :-()
Avatar billede laurents Nybegynder
17. juni 2010 - 22:16 #3
ok, snuppede lige en kop kaffe, og så kom hjernen i sving igen.... Jeg gjorde således:

onchange="this.form.divused.value=this.value;"

TUSIND tak for at du smed mig i rigtig retning....

Smider du et svar så du kan få lidt point?
Avatar billede claes57 Ekspert
18. juni 2010 - 10:15 #4
ok - nogle gange er simple løsninger også gode..
Avatar billede laurents Nybegynder
18. juni 2010 - 12:06 #5
yes - og ofte dem der holder bedst ;-)
Tak for hjælpen!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester