Desperately: Need help selecting a checkbox

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Rodney King

    Desperately: Need help selecting a checkbox

    Hi,

    I have developed an ASP page which dynamically displays a list of
    checkbox options based on a SQL statement. Here is my code:

    <div style="OVERFLOW :auto; Height: 150px">
    <table>
    <%
    dim adOpenForwardOn ly, adLockReadOnly
    dim adCmdTable, ctr, checkboxID
    adOpenForwardOn ly = 0
    adLockReadOnly = 1
    adCmdTable = 2

    dim objConn, objRS, cmdType

    set objConn = Server.CreateOb ject("ADODB.Con nection")
    objConn.Open("t anklink")
    set objCommand = Server.CreateOb ject("ADODB.Com mand")
    objCommand.Acti veConnection = objConn
    objCommand.Comm andType = 1
    objCommand.Comm andTimeout = 10
    objCommand.Comm andText = Session("newSQL ")

    objCommandType = adCmdText
    set objRS = objCommand.Exec ute

    while not objRS.EOF
    ctr = ctr + 1
    checkboxID = "tank_chkbo x"
    Response.Write "<tr>"
    Response.Write "<td width='20px'>"
    Response.Write "<input type='checkbox' name='"
    & checkboxID & "' id='" & checkboxID & "' value='" & objRS("tankid")
    &"' />"
    Response.Write "</td>"
    Response.Write "<td width='200px'>"
    Response.Write objRS("Name")
    Response.Write "</td>"
    Response.Write "</tr>"
    objRS.MoveNext
    wend
    objRS.Close
    objConn.Close
    set objRS = Nothing
    set objConn = Nothing
    %>
    </table>
    </div>

    My code displays properly, but I am having trouble writing a function
    or a procedure that will parse through the list of checkboxes to see
    which checkbox is checked when a submit button is pressed. Can
    someone please provide some sample code to get me started?

    Response.Form(" tank_chkbox") does not seem to work and gives me an
    error when I try and use it.

    Thanks

  • Aaron [SQL Server MVP]

    #2
    Re: Desperately: Need help selecting a checkbox

    > Response.Form(" tank_chkbox") does not seem to work and gives me an[color=blue]
    > error when I try and use it.[/color]

    What does "does not seem to work" mean? What is "an error", could you be
    more specific? What does "try and use it" mean, can you show what code
    you've tried?

    --
    Please contact this domain's administrator as their DNS Made Easy services have expired.

    (Reverse address to reply.)


    Comment

    • Mark Schupp

      #3
      Re: Desperately: Need help selecting a checkbox

      It appears from your code that the checkbox name is the same in all cases.
      Is that your intent or were you planning to append the count in ctr to each
      name.

      If the checkboxes are all the same name then you will receive a
      comma-separated list of the values for all the "checked" boxes. You can
      access the individual values by splitting the list on comma or by iterating
      through the form collection as in:

      'split into array
      avalues = split(request.f orm("tank_chkbo x"), ",")

      'iterate through form field
      For i = 0 to request.form("t ank_chkbox").co unt 'may need to start with 1
      instead of 0
      value = request.form("t ank_chkbox")(i)

      'do something with value
      Next

      Note: if your values may contain commas then you will need to use the
      request.form method instead of split

      If you are going to append the counter then you will need to loop through
      the possible counter values and check for form fields.

      --
      Mark Schupp
      Head of Development
      Integrity eLearning



      <Rodney King> wrote in message
      news:s3eom01tta 1boadpurp1hnms7 93jb0jtpq@4ax.c om...[color=blue]
      > Hi,
      >
      > I have developed an ASP page which dynamically displays a list of
      > checkbox options based on a SQL statement. Here is my code:
      >
      > <div style="OVERFLOW :auto; Height: 150px">
      > <table>
      > <%
      > dim adOpenForwardOn ly, adLockReadOnly
      > dim adCmdTable, ctr, checkboxID
      > adOpenForwardOn ly = 0
      > adLockReadOnly = 1
      > adCmdTable = 2
      >
      > dim objConn, objRS, cmdType
      >
      > set objConn = Server.CreateOb ject("ADODB.Con nection")
      > objConn.Open("t anklink")
      > set objCommand = Server.CreateOb ject("ADODB.Com mand")
      > objCommand.Acti veConnection = objConn
      > objCommand.Comm andType = 1
      > objCommand.Comm andTimeout = 10
      > objCommand.Comm andText = Session("newSQL ")
      >
      > objCommandType = adCmdText
      > set objRS = objCommand.Exec ute
      >
      > while not objRS.EOF
      > ctr = ctr + 1
      > checkboxID = "tank_chkbo x"
      > Response.Write "<tr>"
      > Response.Write "<td width='20px'>"
      > Response.Write "<input type='checkbox' name='"
      > & checkboxID & "' id='" & checkboxID & "' value='" & objRS("tankid")
      > &"' />"
      > Response.Write "</td>"
      > Response.Write "<td width='200px'>"
      > Response.Write objRS("Name")
      > Response.Write "</td>"
      > Response.Write "</tr>"
      > objRS.MoveNext
      > wend
      > objRS.Close
      > objConn.Close
      > set objRS = Nothing
      > set objConn = Nothing
      > %>
      > </table>
      > </div>
      >
      > My code displays properly, but I am having trouble writing a function
      > or a procedure that will parse through the list of checkboxes to see
      > which checkbox is checked when a submit button is pressed. Can
      > someone please provide some sample code to get me started?
      >
      > Response.Form(" tank_chkbox") does not seem to work and gives me an
      > error when I try and use it.
      >
      > Thanks
      >[/color]


      Comment

      • Rodney King

        #4
        Re: Desperately: Need help selecting a checkbox

        Mark,

        Thanks for responding. My problem is I can't even get the comma
        seperated list. I'm very familiar with ASP.NET but am new to ASP and
        JavaScript. What I essentially want to do is to have a submit button
        onclick event iterate through the table collection that I created and
        select the values of my checked checkboxes.

        Here is the code I have for my submit button and function:
        <script language="JavaS cript">
        function display_checkbo x_values()
        {
        var selected_list;
        selected_list = Response.Form(" tank_chkbox");
        alert(selected_ list);
        }
        </script>
        <td><INPUT type="submit" onclick="displa y_checkbox_valu es()"
        id=submit1 name=submit1>
        </td>

        When this code is run, it gives me an error.

        Aaron,

        Thanks for responding. The error message that I am getting is
        Response is not defined.


        Thanks for all your help.

        On Tue, 12 Oct 2004 13:46:37 -0700, "Mark Schupp"
        <mschupp@ielear ning.com> wrote:
        [color=blue]
        >It appears from your code that the checkbox name is the same in all cases.
        >Is that your intent or were you planning to append the count in ctr to each
        >name.
        >
        >If the checkboxes are all the same name then you will receive a
        >comma-separated list of the values for all the "checked" boxes. You can
        >access the individual values by splitting the list on comma or by iterating
        >through the form collection as in:
        >
        >'split into array
        >avalues = split(request.f orm("tank_chkbo x"), ",")
        >
        >'iterate through form field
        >For i = 0 to request.form("t ank_chkbox").co unt 'may need to start with 1
        >instead of 0
        > value = request.form("t ank_chkbox")(i)
        >
        > 'do something with value
        >Next
        >
        >Note: if your values may contain commas then you will need to use the
        >request.form method instead of split
        >
        >If you are going to append the counter then you will need to loop through
        >the possible counter values and check for form fields.[/color]

        Comment

        • Aaron [SQL Server MVP]

          #5
          Re: Desperately: Need help selecting a checkbox

          (a) there is no such thing as response.form
          (b) you are mixing client-side and server-side script. Maybe you meant:

          var selected_list = "<%=Request.For m("tank_chkbox" )%>";

          --
          Please contact this domain's administrator as their DNS Made Easy services have expired.

          (Reverse address to reply.)




          <Rodney King> wrote in message
          news:hdbqm056pi me4ckisf1k82uim taqi886uv@4ax.c om...[color=blue]
          > Mark,
          >
          > Thanks for responding. My problem is I can't even get the comma
          > seperated list. I'm very familiar with ASP.NET but am new to ASP and
          > JavaScript. What I essentially want to do is to have a submit button
          > onclick event iterate through the table collection that I created and
          > select the values of my checked checkboxes.
          >
          > Here is the code I have for my submit button and function:
          > <script language="JavaS cript">
          > function display_checkbo x_values()
          > {
          > var selected_list;
          > selected_list = Response.Form(" tank_chkbox");
          > alert(selected_ list);
          > }
          > </script>
          > <td><INPUT type="submit" onclick="displa y_checkbox_valu es()"
          > id=submit1 name=submit1>
          > </td>
          >
          > When this code is run, it gives me an error.
          >
          > Aaron,
          >
          > Thanks for responding. The error message that I am getting is
          > Response is not defined.
          >
          >
          > Thanks for all your help.
          >
          > On Tue, 12 Oct 2004 13:46:37 -0700, "Mark Schupp"
          > <mschupp@ielear ning.com> wrote:
          >[color=green]
          > >It appears from your code that the checkbox name is the same in all[/color][/color]
          cases.[color=blue][color=green]
          > >Is that your intent or were you planning to append the count in ctr to[/color][/color]
          each[color=blue][color=green]
          > >name.
          > >
          > >If the checkboxes are all the same name then you will receive a
          > >comma-separated list of the values for all the "checked" boxes. You can
          > >access the individual values by splitting the list on comma or by[/color][/color]
          iterating[color=blue][color=green]
          > >through the form collection as in:
          > >
          > >'split into array
          > >avalues = split(request.f orm("tank_chkbo x"), ",")
          > >
          > >'iterate through form field
          > >For i = 0 to request.form("t ank_chkbox").co unt 'may need to start with 1
          > >instead of 0
          > > value = request.form("t ank_chkbox")(i)
          > >
          > > 'do something with value
          > >Next
          > >
          > >Note: if your values may contain commas then you will need to use the
          > >request.form method instead of split
          > >
          > >If you are going to append the counter then you will need to loop through
          > >the possible counter values and check for form fields.[/color]
          >[/color]


          Comment

          • Rodney King

            #6
            Re: Desperately: Need help selecting a checkbox

            Thanks Aaron,

            I modified my JavaScript so that it looks like this:

            <script language="JavaS cript">
            function display_checkbo x_values()
            {
            var selected_list = "<%=Request.For m("tank_chkbox" )%>";
            alert(selected_ list);
            }
            </script>

            When I click on my submit button I no longer get an error message but
            my alert window never fires. For now I just want to see if I'm
            capturing anything.

            Thanks
            On Wed, 13 Oct 2004 09:53:31 -0400, "Aaron [SQL Server MVP]"
            <ten.xoc@dnartr eb.noraa> wrote:
            [color=blue]
            >(a) there is no such thing as response.form
            >(b) you are mixing client-side and server-side script. Maybe you meant:
            >
            >var selected_list = "<%=Request.For m("tank_chkbox" )%>";[/color]

            Comment

            • Aaron [SQL Server MVP]

              #7
              Re: Desperately: Need help selecting a checkbox

              Ah, I see. Once again, you are confusing server-side and client-side
              script. Request.Form("a nything") will not be available until you actually
              submit the form, so you can only do your alert on the receiving page (not on
              the same page that holds the checkboxes). You will need to use client-side
              script if you want to alert which checkboxes are checked BEFORE submitting
              the form.

              --
              Please contact this domain's administrator as their DNS Made Easy services have expired.

              (Reverse address to reply.)




              <Rodney King> wrote in message
              news:vrfqm0lutq qpmacfofakk28cv 4k5sercui@4ax.c om...[color=blue]
              > Thanks Aaron,
              >
              > I modified my JavaScript so that it looks like this:
              >
              > <script language="JavaS cript">
              > function display_checkbo x_values()
              > {
              > var selected_list = "<%=Request.For m("tank_chkbox" )%>";
              > alert(selected_ list);
              > }
              > </script>
              >
              > When I click on my submit button I no longer get an error message but
              > my alert window never fires. For now I just want to see if I'm
              > capturing anything.
              >
              > Thanks
              > On Wed, 13 Oct 2004 09:53:31 -0400, "Aaron [SQL Server MVP]"
              > <ten.xoc@dnartr eb.noraa> wrote:
              >[color=green]
              > >(a) there is no such thing as response.form
              > >(b) you are mixing client-side and server-side script. Maybe you meant:
              > >
              > >var selected_list = "<%=Request.For m("tank_chkbox" )%>";[/color]
              >[/color]


              Comment

              • Rodney King

                #8
                Re: Desperately: Need help selecting a checkbox

                Thanks alot Aaron. That really helped. I'm finally beginning to get
                it. :)
                On Wed, 13 Oct 2004 11:20:16 -0400, "Aaron [SQL Server MVP]"
                <ten.xoc@dnartr eb.noraa> wrote:
                [color=blue]
                >Ah, I see. Once again, you are confusing server-side and client-side
                >script. Request.Form("a nything") will not be available until you actually
                >submit the form, so you can only do your alert on the receiving page (not on
                >the same page that holds the checkboxes). You will need to use client-side
                >script if you want to alert which checkboxes are checked BEFORE submitting
                >the form.[/color]

                Comment

                Working...