Ошибка C #: «Имя« .. »не существует в текущем контексте» - PullRequest
0 голосов
/ 09 сентября 2018

Это сводит меня с ума. Я хочу сделать что-то простое, но понятия не имею, потому что я абсолютный новичок. Я хочу взять то, что в текстовых полях, и поместить их в 1 метку, а затем сделать эту метку видимой. Я продолжаю получать эту ошибку независимо от того, что я пытаюсь, "имя" submitData "не существует в этом контексте. Что я делаю не так?

Вот код:

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

public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{

}

protected void submit_Click(object sender, EventArgs e) 
{
    submittedData.Text = name.Text + " " + email.Text + " " + phone.Text;
    submittedData.Visible = true;
}
}

и aspx:

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

 <!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<link rel="stylesheet" type="text/css" href="StyleSheet.css"></link>

<title>Coding Club</title>
</head>
<body>
<form id="form1" runat="server">
    <div>
        <h1>Coding club registration form</h1>

        <label for="name">Your Name:</label>
        <asp:TextBox ID="name" runat="server" TextMode="SingleLine"></asp:TextBox>
    </div>

    <div>
        <label for="email">Your Email:</label>
        <asp:TextBox ID="email" runat="server" TextMode="SingleLine"></asp:TextBox>
    </div>

    <div>
        <label for="phone">Your Phone:</label>
        <asp:TextBox ID="phone" runat="server" TextMode="SingleLine"></asp:TextBox>
    </div>
    <div>
        <asp:Button ID="submit" runat="server" Text="Submit" onclick="submit_Click" />

        <asp:Button ID="clear" runat="server" Text="Clear Form" />
    </div>
    <div>
        <label for="submittedData" runat="server"></label>
    </div>

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

Ответы [ 2 ]

0 голосов
/ 09 сентября 2018

Вы можете изменить свой код, как показано ниже:

<asp:Label id="submittedData" runat="server"></asp:Label>

Или asp: буквальный.

Поскольку ваша текущая метка не является элементом управления asp-сервером, вы не можете установить ее через метку для вещи.

Ваш основной HTML все еще будет генерировать <label for> тег.

Также я заметил, что вы использовали:

<label for="name"> next to your text input box.

Вы можете использовать <asp:Label id=“labelName” AssociatedControlId=“name” runat=“server”>

Таким образом, если вы нажмете на ярлык, ваше текстовое поле получит фокус

0 голосов
/ 09 сентября 2018

Вам не хватает атрибута id в элементе метки в файле aspx

<label id="submittedData" runat="server"></label>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...