Avatar billede fenriz Nybegynder
30. november 2006 - 11:49 Der er 5 kommentarer og
1 løsning

klik for at ændre variabel

Jeg er bestemt ikke en haj til JavaScript, men er da nået et stykke med mit system...

Nu har jeg et problem med at at når jeg klikker på "OnCellCliced"
skal den ændre værdien af min "vn" i min ASP kode, men hvordan går jeg det???

Her er koden:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<% Option Explicit %>
<!--#include file="inc/DBConnection.asp"--><html>
<%
        AabenDB

        Dim oFld, SQL, vn
       

        SQL = "SELECT ItemNumber As Varenummer, ItemName As Varetekst, ItemGroup As Varegruppe, " _
        & "ItemType As Varetype, CostPrice As Kostpris, SalesPrice As Salgspris FROM dbo.VibroLag"
       
        rs.Open SQL,Connection         
       
        vn = request.QueryString("ItemNumber")             

            function aw_string(s)
           
                s = Replace(s, "\", "\\")
                s = Replace(s, """", "\""") 'replace javascript control characters - ", \
            rem s = Replace(s, vbCr, "\r")
            rem s = Replace(s, vbLf, "\n")
           
                aw_string = """" & s & """"
           
            end function
           
           
           
            function aw_headers(rs)
           
                Dim i, count, headers()
           
                count = rs.fields.count
                ReDim headers(count-1)
           
                For i=0 to count-1
                    headers(i) = aw_string(rs(i).name)
                Next
           
                Response.write("[" & Join(headers, ", ") & "];")
           
            end function
           
            function aw_cells(rs)
           
                Dim i, col_count, row_count, columns(), rows()
           
                row_count = 0
                col_count = rs.fields.count
                ReDim columns(col_count-1)
           
                Do while (Not rs.eof)
           
                    For i=0 to col_count-1
                        columns(i) = aw_string(rs(i))
                    Next
           
                    ReDim preserve rows(row_count)
           
                    rows(row_count) = vbTab & "[" & Join(columns, ", ") & "]"
                    row_count = row_count + 1
           
                    rs.MoveNext
                Loop
           
                response.write("[" & vbNewLine & Join(rows, "," & vbNewLine) & vbNewLine & "];" & vbNewLine)
           
            end function

%>
<html>
<head>
    <script src="runtime/lib/aw.js"></script>
    <link href="runtime/styles/xp/aw.css" rel="stylesheet"></link>
   
    <style>
        .aw-grid-control {height: 494px; width: 875px; margin: 0px; border: none; font: menu;}
        .aw-row-selector {text-align: center}

        .aw-column-0 {width:  125px;}
        .aw-column-1 {width: 315px;}
        .aw-column-2 {text-align: right;}
        .aw-column-3 {text-align: right;}
        .aw-column-4 {text-align: right;}
        .aw-column-5 {text-align: right;}
       
        .aw-mouseover-row {background: #def;}
        .aw-grid-cell {border-right: 1px solid threedlightshadow;}
        .aw-grid-row {border-bottom: 1px solid threedlightshadow;}
       
        .thumbnail{
            position: relative;
            z-index: 0;
            }
       
        .thumbnail:hover{
            background-color: transparent;
            z-index: 50;
            }
       
        .thumbnail span{
            position: absolute;
            background-color:#FFFFFF;
            padding: 0px;
            border: 1px solid #6F90A3;
            visibility: hidden;
            color: black;
            text-decoration: none;
            }
       
        .thumbnail span table{ /*CSS for enlarged image*/
            border-width: 0;
            padding: 2px;
            }
       
        .thumbnail:hover span{ /*CSS for enlarged image on hover*/
            visibility: visible;
            top: 0;
            left: -150px; /*position where enlarged image should offset horizontally */
        }
    </style>
</head>
<body>

<script>
       

       
    //    insert javascript arrays produced by ASP functions
    var myHeaders = <%= aw_headers(rs) %>
    var myCells = <%= aw_cells(rs) %>
   

    //    create grid control
    var obj = new AW.UI.Grid;

    //    set grid text
    obj.setHeaderText(myHeaders);
    obj.setCellText(myCells);

    //    set number of columns/rows
    obj.setColumnCount(myHeaders.length);
    obj.setRowCount(myCells.length);

    //    enable row selectors
    obj.setSelectorVisible(true);
    obj.setSelectorText(function(i){return this.getRowPosition(i)+1});

   
    //    set headers width/height
    obj.setSelectorWidth(30);
    obj.setHeaderHeight(20);

    //    set row selection
    obj.setSelectionMode("single-row");

    //    set click action handler
    obj.onCellClicked = function(event, col, row){window.status = this.getCellText(col, row)};
   
        obj.setColumnCount(6);
        obj.setRowCount(25);

       
        var button = new AW.UI.Button;
       
        button.setControlText("<< Tilbage");
        document.write(button);
       
        button.onControlClicked = function(){
            var x = obj.getRowOffset();
            if (x==0)
            {
            exit();
            }
           
           
            obj.setRowOffset(x-25);
            obj.refresh();
        }
       
        var button = new AW.UI.Button;
        button.setControlText("N&aelig;ste >>");
        document.write(button);
       
        button.onControlClicked = function(){
            var x = obj.getRowOffset();
            if (x==obj.setRowCount)
            {
            exit();
            }
           
            obj.setRowOffset(x+25);
            obj.refresh();
        }

//    write grid to the page
    document.write(obj);

</script>

<form action="senddate.asp" method="post">
<input name="ItemNumber" id="ItemNumber" value="ItemNumber" type="hidden">
<input name="senddate" type="button" value="Send data">
</form>

</body>
</html>
<%
    rs.close
    Connection.close
%>
Avatar billede olebole Juniormester
30. november 2006 - 11:51 #1
<ole>

JavaScript lever på klienten, mens ASP lever på serveren. JS kan således ikke direkte ændre noget i din ASP-kode, uden du sender dokumentet en tur omkring serveren (= reloader det)

/mvh
</bole>
Avatar billede fenriz Nybegynder
30. november 2006 - 11:58 #2
ja, den er jeg med på, men hvad skriver jeg for at gøre det?

obj.onCellClicked = True
vn== this.getCellText(col, row)
obj.refresh();

eller noget i den stil????
Avatar billede fenriz Nybegynder
30. november 2006 - 12:52 #3
Har også prøvet med denne og den virker heller ikke...

obj.onCellClicked = function(event, col, row)
        {
            window.status = this.getCellText(row)
           
            var test = this.getCellText(col, row)
            window.location="default.asp?vn=test";
       
        };
Avatar billede olebole Juniormester
30. november 2006 - 12:57 #4
Det kan jeg ikke vide noget om. Jeg kender ikke API'et
Avatar billede fenriz Nybegynder
13. december 2006 - 22:33 #5
Fandt en helt anden løsning med CSS
Avatar billede olebole Juniormester
14. december 2006 - 09:39 #6
- ændre en ASP-variabel med CSS ...?!??!!!

Du kan i øvrigt ikke lukke et link-tag med </link>. Et link-tag har ikke et lukke-tag  =)
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