asp:textbox 传递给 C# 变量时删除空格后的文本
asp:textbox text removed after whitespace when passed to C # Variable
我有一个站点,用户可以在该站点的描述字段中输入一些单行,稍后将添加到创建的工作文件夹中。
我的问题是,如果他们在描述字段中输入的文本包含一个空格,那么当我从 .cs 页面调用时,它只会获取从开头到该空格的文本。我想要用户输入的全部值。
例如:
"This is a Description" 结果:"This"
Default.ASPX 页数:
<asp:UpdatePanel ID="UpdatePanel4" runat="server">
<ContentTemplate>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td> </td></tr>
<tr>
<td>
<span class="SectionHeader">Beskrivning
<asp:CustomValidator ID="CustomValidatorDescription" runat="server"
ControlToValidate="TextBoxDescription" EnableClientScript="False"
onservervalidate="CustomValidatorDescription_ServerValidate"
ValidateEmptyText="True" ForeColor="#DD0000">
</asp:CustomValidator>
</span><br />
<asp:TextBox ID="TextBoxDescription" runat="server" MaxLength="150"
Width="562px" CssClass="textinput" TabIndex="4"></asp:TextBox>
</td>
<td align="left">
<asp:ImageButton ID="ImageButton4" runat="server" BorderStyle="None"
BorderWidth="0px" CausesValidation="False"
ImageUrl="~/images/help_icon_off.png" CommandName="4"
oncommand="ImageButton_Command" ToolTip="Visa hjälp för fältet" />
</td>
</tr>
</table>
<asp:Panel ID="Panel4" runat="server" CssClass="tip" Visible="False">
Är den (metadata) text som kommer att visas i uppdragskatalogen i filutforskaren
i Windows.<br />
Denna information går att ändra i efterhand.
</asp:Panel>
</ContentTemplate>
</asp:UpdatePanel>
我从 ASPX 文件中发布了整个内容,以防你们需要检查 .cs 使用的其他一些内容,例如 "UpdatePanel4" 或 "CustomValidatorDescription"
Default.ASPX.CS:
protected void ButtonCreateDir_Click(object sender, EventArgs e)
{
string description = TextBoxDescription.Text;
然后我使用 "description" 来完成我需要做的事情。
我还有 2 个下拉列表和另一个我传递给 .cs 页面的文本字段,它工作正常,尽管这些字段上没有空格。
事实证明这是一个简单但棘手的修复:)
cs 页面触发位于本地的 powershell 脚本,其中包含用户在页面上填写的数据。由于调用 powershell 脚本时需要 " 之间的空格。这解决了问题:
string vartDescription = "'" + TextBoxDescription.Text + "'";
所以调用 "wrong" 的是 powershell 脚本。 :)
我有一个站点,用户可以在该站点的描述字段中输入一些单行,稍后将添加到创建的工作文件夹中。
我的问题是,如果他们在描述字段中输入的文本包含一个空格,那么当我从 .cs 页面调用时,它只会获取从开头到该空格的文本。我想要用户输入的全部值。
例如: "This is a Description" 结果:"This"
Default.ASPX 页数:
<asp:UpdatePanel ID="UpdatePanel4" runat="server">
<ContentTemplate>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td> </td></tr>
<tr>
<td>
<span class="SectionHeader">Beskrivning
<asp:CustomValidator ID="CustomValidatorDescription" runat="server"
ControlToValidate="TextBoxDescription" EnableClientScript="False"
onservervalidate="CustomValidatorDescription_ServerValidate"
ValidateEmptyText="True" ForeColor="#DD0000">
</asp:CustomValidator>
</span><br />
<asp:TextBox ID="TextBoxDescription" runat="server" MaxLength="150"
Width="562px" CssClass="textinput" TabIndex="4"></asp:TextBox>
</td>
<td align="left">
<asp:ImageButton ID="ImageButton4" runat="server" BorderStyle="None"
BorderWidth="0px" CausesValidation="False"
ImageUrl="~/images/help_icon_off.png" CommandName="4"
oncommand="ImageButton_Command" ToolTip="Visa hjälp för fältet" />
</td>
</tr>
</table>
<asp:Panel ID="Panel4" runat="server" CssClass="tip" Visible="False">
Är den (metadata) text som kommer att visas i uppdragskatalogen i filutforskaren
i Windows.<br />
Denna information går att ändra i efterhand.
</asp:Panel>
</ContentTemplate>
</asp:UpdatePanel>
我从 ASPX 文件中发布了整个内容,以防你们需要检查 .cs 使用的其他一些内容,例如 "UpdatePanel4" 或 "CustomValidatorDescription"
Default.ASPX.CS:
protected void ButtonCreateDir_Click(object sender, EventArgs e)
{
string description = TextBoxDescription.Text;
然后我使用 "description" 来完成我需要做的事情。 我还有 2 个下拉列表和另一个我传递给 .cs 页面的文本字段,它工作正常,尽管这些字段上没有空格。
事实证明这是一个简单但棘手的修复:)
cs 页面触发位于本地的 powershell 脚本,其中包含用户在页面上填写的数据。由于调用 powershell 脚本时需要 " 之间的空格。这解决了问题:
string vartDescription = "'" + TextBoxDescription.Text + "'";
所以调用 "wrong" 的是 powershell 脚本。 :)