2009-07-15 17 views
0

Ich habe eine Rasteransicht mit mehreren Auswahlkästchen. Ich möchte ein Array der Elemente zurück, die ausgewählt wurden, und setzen diese in einem Etikett (Comma Separated)Parsen mehrerer Werte und Senden in einer Abfragezeichenfolge

12,34,34,54,54,5 

Ich möchte es auf eine Abfrage Zeichenfolge analysiert und dann gesendet werden oder den gesamten Wert senden die Abfragezeichenfolge

Wie erhalten Sie mehrere ausgewählte Kontrollkästchen und geben ein Array von Elementen zurück?

+0

tun Sie das Array von Kontrollkästchen erhalten möchten, die im Raster ausgewählt werden? –

+0

ja das ist genau das, was ich will. Wo ist der Link? – ferronrsmith

Antwort

1

Versuchen Sie folgendes:

<%@ Page Language="C#" %> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

<script runat="server"> 

    protected void Page_Load(object sender, EventArgs e) 
    { 
     if (!IsPostBack) 
     { 
      System.Collections.Generic.List<int> Values = new System.Collections.Generic.List<int> { 1, 2, 3, 4, 5, 6, 7 }; 
      grdTest.DataSource = Values; 
      grdTest.DataBind(); 
     } 
    } 

    protected void btnSubmit_Click(object sender, EventArgs e) 
    { 
     HtmlInputCheckBox chkTest = null; 
     string SelectedValues = ""; 
     foreach (GridViewRow row in grdTest.Rows) 
     { 
      chkTest = (HtmlInputCheckBox) row.FindControl("chkTest"); 
      if (chkTest != null && chkTest.Checked) 
      { 
       SelectedValues += (SelectedValues == "" ? chkTest.Value : ", " + chkTest.Value); 
      } 
     } 

     litValues.Text = SelectedValues; 
    } 
</script> 

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
    <title></title> 
</head> 
<body> 
    <form id="form1" runat="server"> 
    <div> 
      <asp:GridView ID="grdTest" runat="server"> 
       <Columns> 
        <asp:TemplateField> 
         <ItemTemplate> 
          <input id="chkTest" type="checkbox" name="chkTest" runat="server" 
          value="<%# (int)Container.DataItem %>" /> 
         </ItemTemplate> 
        </asp:TemplateField> 
       </Columns> 
      </asp:GridView> 

      <asp:Button ID="btnSubmit" runat="server" onclick="btnSubmit_Click" Text="Submit" /> 
      <br /> 
      <asp:Literal ID="litValues" runat="server"></asp:Literal> 
    </div> 
    </form> 
</body> 
</html> 
+0

nicht genau nach was ich suche. die Liste wird nicht programmatisch im Code hinter verursacht. Sein Griff von einer Datenbank und in eine gridview gelegt. – ferronrsmith

+0

danke anyways für die Hilfe. – ferronrsmith

+0

Ich erzeugte gerade eine Liste in der Seite, um etwas zu haben Ich denke, das gleiche Konzept würde gelten, wenn die Liste von der Datenbank kam. Können Sie etwas von Ihrem Code veröffentlichen, damit wir sehen können, woran Sie arbeiten? –

0

Wenn Sie versuchen, den Parameter 'check' abzurufen, erhalten Sie ein Array aller ausgewählten Werte.

EDIT: Dieser Link sollte beim Abrufen der Werte in ASP helfen.

ASP.NET : The checkbox and checkboxlist control

+0

diese reguläre html was ist asp.net, programmatisch? – ferronrsmith

+0

Ich habe einen Link zur Lösung hinzugefügt, hoffe, es hilft (Ich bin kein asp.net Programmierer, so kann ich Ihnen nicht den genauen Code selbst geben) –

+0

scheint eher eine Frage als eine tatsächliche Antwort :( – ferronrsmith

Verwandte Themen