2015-11-04 6 views
0

Я хочу изменить элементы в gridview командой update, но на той же странице у меня также есть текстовое поле с необходимой проверкой.не удалось обновить в gridview, когда требуется проверка в текстовом поле

я не смог обновить в GridView, когда требуется проверка происходит в контроле текстового поля enter image description here

и исходный код здесь ...

<div class="row"> 
    <asp:Button ID="Button1" runat="server" CssClass="btn btn-primary" Text="Add" OnClick="Button1_Click" 
     ValidationGroup="btn" /> 
    <asp:Button ID="Button2" runat="server" CssClass="btn btn-primary" Text="Reset" OnClick="Button2_Click" 
     CausesValidation="False" /> 
    <asp:Button ID="Button3" runat="server" CssClass="btn btn-primary" Text="Show" CausesValidation="False" 
     OnClick="Button3_Click" /> 
</div> 
</form> </div> </div> 
<asp:GridView ID="GridView1" runat="server" CssClass="table-hover table-responsive table-condensed table-bordered" 
    AllowPaging="True" AllowSorting="True" AutoGenerateColumns="False" DataKeyNames="id" 
    DataSourceID="SqlDataSource1" Visible="False"> 
    <Columns> 
     <asp:CommandField ShowDeleteButton="True" ShowEditButton="True" /> 
     <asp:BoundField DataField="id" HeaderText="id" InsertVisible="False" ReadOnly="True" 
      SortExpression="id" /> 
     <asp:BoundField DataField="Loc" HeaderText="Location" SortExpression="Loc" /> 
    </Columns> 
</asp:GridView> 
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:mycon %>" 
    SelectCommand="SELECT * FROM [location]" DeleteCommand="Delete From Location Where [email protected]" 
    UpdateCommand="update location set [email protected] where [email protected]"> 
    <DeleteParameters> 
     <asp:ControlParameter ControlID="TextBox1" Name="id" PropertyName="Text" /> 
    </DeleteParameters> 
    <UpdateParameters> 
     <asp:Parameter Name="loc" /> 
     <asp:ControlParameter ControlID="GridView1" Name="id" PropertyName="SelectedValue" /> 
    </UpdateParameters> 
</asp:SqlDataSource> 

и CS-код здесь

protected void Button1_Click(object sender, EventArgs e) 
{ 
    string qry = "insert into location (loc)values(@loc) "; 
    SqlConnection con = Connection.Getconnection(); 
    con.Open(); 
    SqlCommand cmd = new SqlCommand(qry, con); 
    cmd.Parameters.AddWithValue("@loc", TextBox1.Text); 
    int x = cmd.ExecuteNonQuery(); 
    if (x > 0) 
    { 
     ClientScript.RegisterStartupScript(Page.GetType(), "validation!", "<script>alert('Successfully Add')</script>"); 
    } 
    else 
    { 
     ClientScript.RegisterStartupScript(Page.GetType(), "validation!", "<script>alert('Error')</script>"); 
    } 
} 
protected void Button2_Click(object sender, EventArgs e) 
{ 
    TextBox1.Text = string.Empty; 
} 
protected void Button3_Click(object sender, EventArgs e) 
{ 
    GridView1.Visible = true; 
} 
+0

вы получаете какие-либо ошибки? – Webruster

+0

Применить группу проверки на Добавить поле ввода. –

+0

введите здесь свой код. –

ответ

1
  1. Попробуйте добавить try catch для button1_click, чтобы поймать Ex ятие.
  2. Validation группа имеет эффект только тогда, когда значение свойства CausesValidation устанавливаются в true.and группы проверки необходимо указать value Пожалуйста, обратитесь этой Link
+0

@kkzone Могу ли я узнать причину не принимать его в качестве ответа даже после решения вашей проблемы? – Webruster