提问人:Tue Sandbæk 提问时间:3/17/2023 最后编辑:Tue Sandbæk 更新时间:3/17/2023 访问量:51
从文本框输入接收输入
Receive input from textbox input
问:
我需要从文本框接收输入,以便使用新文本更新我的 xml 文件。
我有这个代码脚本:
<script runat="server">
protected void btnSave_Click(object sender, EventArgs e)
{
string xmlPath = MapPath("xml/feed.xml");
XmlDocument doc = new XmlDocument();
//Check if the file already exists or not
if (System.IO.File.Exists(xmlPath))
{
string Path2xml = MapPath("xml/feed.xml");
XDocument xdoc = XDocument.Load(Path2xml);
string txt2Title = txtTitle.Text;
//xdoc.Element("CGTemplateDATA").Element("title").SetValue(txt2Title);
// or even better option
xdoc.Descendants("title").FirstOrDefault().SetValue(txt2Title);
xdoc.Save(Path2xml);
lblResult.Text = "XML dokumentet er blevet opdateret";
}
else
{
XmlNode declarationNode = doc.CreateXmlDeclaration("1.0", "utf-8", "yes");
doc.AppendChild(declarationNode);
XmlNode bookNode = CreateBookNode(doc);
//Append the cgtemplatedata node to the document
doc.AppendChild(bookNode);
lblResult.Text = "XML dokumentet er hermed oprettet";
doc.Save(xmlPath);
}
}
XmlNode CreateBookNode(XmlDocument doc)
{
XmlNode bookNode = doc.CreateElement("CGTemplateDATA");
//Add all the children of the book node
XmlNode titleNode = doc.CreateElement("title");
titleNode.InnerText = txtTitle.Text;
bookNode.AppendChild(titleNode);
XmlNode textNode = doc.CreateElement("text");
textNode.InnerText = txtText.Text;
bookNode.AppendChild(textNode);
XmlNode referenceNode = doc.CreateElement("reference");
referenceNode.InnerText = txtReference.Text;
bookNode.AppendChild(referenceNode);
return bookNode;
}
</script>
它不对标题中的文本做任何事情,也不像我检查文本框中的文本那样:
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<CGTemplateDATA>
<title>Title</title>
<text>put text here</text>
<reference>put ref here</reference>
</CGTemplateDATA>
没有显示错误,但它没有更新我的字符串?
这是我的网络:
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Storke-TV tekst</title>
<link href="css/stylesheet.css" rel="stylesheet" type="text/css" />
</head>
<body>
<form id="form1" runat="server">
<div>
<img alt="" class="style5" src="images/storke_tekst_top.png" /><br />
<br />
<table>
<tr>
<td colspan="2" style="width: 586px">
<b>FORSIGTIG! Denne side giver direkte adgang til at opdatere storke tekst.</b><br />
<br />
1: Udfyld felterne.<br />
2: Tryk på GEM TEKST.<br />
3: Hvis du vil opdatere teksten, så ret den, og tryk på GEM TEKST igen.<br />
</td>
</tr>
<tr>
<td colspan="2" style="width: 586px"> </td>
</tr>
<tr>
<td style="width: 85px; height: 40px">
Overskrift:
</td>
<td style="width: 501px; height: 40px">
<asp:TextBox ID="txtTitle" runat="server" Width="182px" Height="28px" Text="string"></asp:TextBox>
</td>
</tr>
<tr>
<td style="width: 85px; height: 41px">
Tekst:
</td>
<td style="width: 501px; height: 152px">
<asp:TextBox ID="txtText" Textmode="Multiline" runat="server" Width="240px" height="150"></asp:TextBox>
</td>
</tr>
<tr>
<td style="width: 85px; height: 41px">
Henvisning:
</td>
<td style="width: 501px; height: 54px">
<asp:TextBox ID="txtReference" Textmode="Multiline" runat="server" Width="240px" Height="42px"></asp:TextBox>
< <asp:Button Text="Indsæt web henvisning" runat="server" ID="btnReftxt" Width="142px" Height="24" font-size="12px" OnClick="Save"/>
</td>
</tr>
<tr>
<td style="width: 85px; height: 41px">
</td>
<td style="width: 586px; height: 52px">
<asp:Button Text="GEM TEKST" runat="server" ID="btnSave" Width="240px" Height="40" OnClick="btnSave_Click"/>
</td>
</tr>
<tr>
<td style="width: 85px; height: 41px">
</td>
<td style="width: 586px; height: 41px">
<asp:Label Text="Gem tekst" runat="server" ID="lblResult" Width="295px"/>
</td>
</tr>
</table>
</div>
</form>
</body>
</html>
我无法弄清楚,但答案可能就在我面前?
答:
0赞
Yitzhak Khabinsky
3/17/2023
#1
请尝试以下操作。
步骤#1
将 text 属性添加到如下所示:asp:TextBox
<asp:TextBox ID="txtTitle" runat="server" Width="182px" Height="28px" Text="some InitialValue"></asp:TextBox>
步骤#2
之后,当您获取文本框值时,它将起作用
string txt2Title = txtTitle.Text;
有关参考,官方 Microsoft 文档:TextBox 类
评论
0赞
Tue Sandbæk
3/17/2023
不做任何更改,仍然不起作用。
0赞
Yitzhak Khabinsky
3/17/2023
请编辑您的问题,并添加他们的整个网络表单。
0赞
Tue Sandbæk
3/17/2023
我现在已经做到了
0赞
Yitzhak Khabinsky
3/18/2023
learn.microsoft.com/en-us/aspnet/web-forms/overview/......
0赞
Yitzhak Khabinsky
3/18/2023
asp.net-tutorials.com/basics/events
评论