将 asp.net 表单“转换”为 html 表单

Posted

技术标签:

【中文标题】将 asp.net 表单“转换”为 html 表单【英文标题】:"Converting" asp.net form to html form 【发布时间】:2011-11-16 14:04:52 【问题描述】:

我有一个 asp.net 网络表单。用户在文本框中输入数据,我使用按钮OnClick="SubmitData"

现在我想使用 jquery 并使我的表单看起来更好,我不知道我是否可以保留 asp.net 控件或是否必须转换为 html 控件。

问题我需要转换吗

<asp:TextBox ID="section_c_issue_error_identified_byTextBox"   runat="server" 
                    />

到这样的事情:

<textarea name="comments" id="comments" rows="5" cols="60"></textarea>

如果是这样,我将如何从这些新的 html 文本框中获取用户输入?

您能准确告诉我如何将这些值传递到我的 c# 代码中吗?

【问题讨论】:

【参考方案1】:

我需要转换的问题

<asp:TextBox ID="section_c_issue_error_identified_byTextBox" 

runat="服务器" />

到这样的事情:

<textarea name="comments" id="comments" rows="5"

cols="60">

是的,你需要这样做。

要使用 JQuery 从这些控件捕获输入,您需要执行以下操作:

var elementValue = $('#elementid').val();

elementid 是您在标记中分配给元素的 id。在上面的示例中,它将是“cmets”。

elementValue 将在您的文本区域中输入文本。

【讨论】:

再次感谢您愿意帮助我。你能准确告诉我如何将这些值传递到我的 c# 代码中吗?对不起,我是一个 asp.net 初学者。还有我会把 var elementvalue 放在哪里? 您想使用 jquery 并仍然通过服务器端代码提交和处理表单吗?如果是这样,您仍然可以添加标签 runat="server",aspnet 会让您“看到”这些控件服务器端。如果您只想使用 jquery 或任何 javascript 代码设置控件的样式,则不必更改控件,因为 ASPNET 无论如何都会生成 html 代码。在浏览器中查看一下页面的源代码,您将看到所有的 html。【参考方案2】:

你不需要转换任何东西,因为它会在客户端转换为 html。

获取文本框的值的方法很少,例如,

如果下面是我的文本框,

   <asp:TextBox ID="txtCountry" Width="500" runat="server" CssClass="countryText" />

我可以使用,

$('#<%= txtCountry.ClientID%>').val()

$('.countryText').val()

【讨论】:

【参考方案3】:

您不需要转换任何东西,只需将属性clientID添加为静态类型

 ClientIDMode="Static"

保证 id asp component 不会更改 id 的名称

<asp:TextBox ID="txtCountry" Width="500" runat="server" CssClass="countryText"  ClientIDMode="Static" />

$('#txtCountry').val();   

【讨论】:

更正:$('#txtCountry').val();顺便说一句,虽然静态客户端模式是另一种选择,但我想它应该只在非常特殊的情况下使用,否则它最终可能会使您的代码库受到太多限制。 除非他不使用 aspnet 4

以上是关于将 asp.net 表单“转换”为 html 表单的主要内容,如果未能解决你的问题,请参考以下文章

将 Microsoft Access 表单导出为 HTML 的工具 [关闭]

试图将两个runat = server表单放在一个web表单asp.net中

如何克服为贝宝按钮 asp.net 嵌入 html 表单

ASP.NET MVC学习之模型绑定

在 ASP.NET 中使用嵌入式标准 HTML 表单

提交到 ASP.NET 页面的 PDF 表单创建返回 HTML 文件