在ASPX中提交后保留HTML控件值

时间:2011-11-04 20:04:13

标签: jquery html asp.net retain

我在aspx的div标签中有HTML元素(输入,具体选择)。我使用Jquery对它们进行了一些计算。我的提交按钮使用onclientclick执行验证,如果返回true,则发生服务器端操作(提交按钮的onclick事件)。  但是,一旦我提交,HTML元素就会失去它们的价值并变成空白。我希望在提交后保留这些值,以便用户可以在提交之前查看他们输入的内容。 有人建议<asp:UpdatePanel>。但是,我不想使用.NET AJAX。 可以用Jquery / Javascript完成吗?

以下是aspx页面中的HTML示例。

<input id="txtLength10"  onchange="cc(10);" type="text" class="numeric"  maxlength="25"    />

<select id="ddClass10"><option value="10">Select Class</option></select>

4 个答案:

答案 0 :(得分:1)

尝试为两个表单元素添加runat="server"属性。

这样两者都将被视为html server controls,所选/输入的值将在回发中保留。

<input id="txtLength10" runat="server" onchange="cc(10);" type="text" class="numeric"  maxlength="25"   />
<select id="ddClass10" runat="server"><option value="10">Select Class</option></select>

答案 1 :(得分:0)

您可以使用jQuery的ajax函数communicate with the server。这省略了使用Microsoft的Ajax实现而不使用任何回发,从而保持您在客户端上构建的DOM完整。

答案 2 :(得分:0)

我有一篇博文,几周前我在“Asp.Net - 通过Session对象在页面之间保存数据”中做了一个博客文章你可以使用我在那里发布的代码,并使用回发之间的持久数据来实现你的控件。它不是客户端选项,但如果你最终走向服务器端路线,这可能有所帮助。

http://blogbydylan.com/blog/2011/10/asp-net-persisting-data-between-pages-via-the-session-object/

答案 3 :(得分:0)

我对上述问题没有运气。最后,我在aspx hiddenfield中获取了所需的控件的所有值,然后使用了一个检查,如果在onload事件上该隐藏字段上存在一个值。

$(document).ready(function() {
if ($('#<%=hdfFILLER.ClientID %>').val() != "") { //use regex to break this string and fill all the html controls }});