2011-11-04 85 views
0

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

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

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

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

回答

0

我对上述问题没有运气。最后,我将aspx所需的所有控件的值全部隐藏起来,然后在onload事件中使用该隐藏域中存在的值进行检查。

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

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> 
+0

我不能让他们RUNAT服务器,因为那时我在jQuery的计算使用客户端ID来指代他们。问题是我做这样的事情: '// paddedcounter是从1到10(01到10) $( '#ddClass' + paddedcounter + '选项:选择')的计数器。VAL(Commodity_Class)' 在使用clientID的情况下,我得到'太多的文字错误' – pl56

+0

也许我错过了一些东西,但ClientID将与标记中指定的id相同(当html控件位于aspx页面内时)。 – jdavies

+0

'$('#<%= ddClass'+ paddedcounter +'。ClientID%>').val()'给出的错误太多文字 – pl56

0

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

+0

我该怎么做 我的提交按钮看起来像这样 ' pl56