【问题标题】:Update Text in ASP.NET text box更新 ASP.NET 文本框中的文本
【发布时间】:2016-05-08 13:51:01
【问题描述】:

我正在尝试使用文本框更新 SQL 数据库中的文本。这是为了让管理员覆盖数据库中的数据。声明变量之一时遇到问题。 itemnametext 在当前上下文中不存在。

项目编辑页面代码:

 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="admin_Default" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>elmtree - Admin</title>


    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>

<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" />

<!-- Optional theme -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap-theme.min.css" />

<!-- Latest compiled and minified JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="../styles/mylist.css" />

</head>
<body>
    <form id="form1" runat="server">

        <img src="images/ELleft.png" style="width:226px; height:52px; margin-top: 3px; margin-left: 17px; text-align: justify; float: none;"/></a></li>



<div class="container">
    <h1> Item Edit </h1> </div>

        <div class="container">

            <div class="form-group">

                <label class="col-sm-2 control-label">Item name: </label> 

                <div class="col-md-4">
                    <asp:TextBox ID="itemnameedit" runat="server" Text="" CssClass="form-control">

                    </asp:TextBox>
                </div>
                <div class="pull-right">
                    <asp:Button CssClass="btn btn-primary btn-lg" ID="updatebutton" role="button" runat="server" Text="save" OnClick="updatebutton_Click" />
                </div>
            </div>

        </div>

        </form>
    </body>
    </html>

itemediting.aspx.cs 的代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI.WebControls;

using System.IO;
using System.Data;
using System.Data.SqlClient;
using System.Web.Configuration;



public partial class admin_itemediting : System.Web.UI.Page{

    protected void Page_Load(object sender, EventArgs e)
    {
        int row = 0;
        if (Request.QueryString["itemID"] != null){

            row = int.Parse(Request.QueryString["itemID"]);
        }
        else{
            Response.Redirect("itemedit.aspx");
        }




        string connectionString = WebConfigurationManager.ConnectionStrings
            ["ConnectionString"].ConnectionString;

        SqlConnection myConnection = new SqlConnection(connectionString);


        myConnection.Open();


        string query = "SELECT * FROM reports WHERE ID=@rowid";


        SqlCommand myCommand = new SqlCommand(query, myConnection);

        myCommand.Parameters.AddWithValue("@rowid", row);


        SqlDataReader rdr = myCommand.ExecuteReader();


        while (rdr.Read())
        {
            string myname = rdr["itemname"].ToString();

            itemnametext.Text = myname;
        }
    }
    protected void updatebutton_Click(object sender, EventArgs e){

        string connectionString = WebConfigurationManager.ConnectionStrings ["ConnectionString"].ConnectionString;

        SqlConnection myConnection = new SqlConnection(connectionString);

        myConnection.Open();

    string itemnametextupdate = itemnametext.Text;

    string query = "UPDATE reports SET itemname = @itemnewname";

    }













    }

}

【问题讨论】:

    标签: c# sql asp.net admin edit


    【解决方案1】:

    您的文本框名称是 itemnameedit,因此找不到 itemnametext

     <asp:TextBox ID="itemnametext" runat="server" Text="" CssClass="form-control"></asp:TextBox>
    

    编辑:您的 aspx 页面是默认的,您正在发布 itemediting.aspx.cs 的代码。发布 itemediting.aspx 的代码

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="admin_Default" %>
    

    【讨论】:

    • 我已经尝试过这样做,但它不起作用。它告诉我“itemnametext”在当前上下文中不存在..
    【解决方案2】:

    只需将 texbox 的 ID 从 itemnameedit 更改为 itemnametext
    更新:在此处更改您的参考以匹配代码文件和 codefile 类。我不认为你有正确的参考,所以 codefile 类 admin_itemediting 不知道你在 aspx 文件中的任何控件。

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="itemediting.aspx.cs" Inherits="admin_itemediting" %>
    

    【讨论】:

    • 我已经尝试过这样做,但它不起作用。它告诉我“itemnametext”在当前上下文中不存在..
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-26
    • 2013-05-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多