首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >JQuery2.0:用asp.net更新表单视图

JQuery2.0:用asp.net更新表单视图
EN

Stack Overflow用户
提问于 2009-09-01 12:48:18
回答 2查看 1.6K关注 0票数 0

我在为一个我能找到解决办法的问题而挣扎。

首先,我不能使用asp.net AJAX或任何其他thant标准的asp.net 2.0,因为服务器管理员不会安装其他任何东西。

所以,我想做的就是。(对于好奇的,跳到下面的粗体问题)

我的页面由几个部分组成,每个部分都由jquery.load(url)加载。其中一个页面部件会被包含表单视图的aspx填充。由于我不希望有回发,我切换到表单视图的EditTemplate,只需简单地点击一个常规的html按钮,该按钮提交一个指示aspx页面切换到编辑模式的参数。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Page_Load(...)
{
   if(Request.Params["SwitchEditMode"]) SwitchEditMode();
}

这是完美的!现在我被困在这里。EditTemplate中的元素基于数据库视图中的select,并通过<%# Bind("xx")绑定到字段。然后我有一个html按钮(没有asp控件),它向aspx页面提交一个参数,该页面告诉它调用DataSource更新方法。在dataSource_updating方法中,我查找包含要保存的值的控件。但这些值总是相同的,就像切换到编辑视图时一样。我在文本框或下拉列表中所做的任何更改都不会被保留。

一个长话短说的问题,如何使用jquery?将值从EditTemplate保存回数据库

到目前为止,我尝试了几种方法,但都没有成功。

  1. 在FindControl ()方法中通过FindControl查找控件并设置e.Command.Parameter["xyz"] = foundcontrol.SelectedValue;。这些值总是与beginning.
  2. Set <asp:parameter name="SampleValue" />中的值相同,而在EditTemplate <asp:TextBox Value='<%# Bind("SampleValue")#>中,值总是为null。
  3. 通过javascript设置一个带有选定值的隐藏输入字段。这不起作用,因为EditTemplate中的控件只有在切换到编辑模式

之后才可见。

所以,也许我的想法完全错了,走向一个完全错误的方向,这可以更容易地完成,但到目前为止,我不知道如何实现这一点。我可以不使用ajax来完成这个任务,但是对于用户体验,我更喜欢使用jquery的版本。

感谢那些读了这么多的书,并且没有感到困惑:-),谢谢你的努力!

诚挚的问候,

安德烈亚斯

EN

回答 2

Stack Overflow用户

发布于 2009-09-01 15:57:16

我会忘记使用表单视图,而只使用带有常规输入控件的常规html表单。从包含所有值的web服务中返回一个对象,并使用ajax填充控件,然后使用ajax填充subjmit。要么完全执行asp.net,要么使用asmx后端执行完全html/jquery。否则就太让人困惑了。

票数 1
EN

Stack Overflow用户

发布于 2009-09-01 12:53:16

如果使用AJAX将FormView的两种“模式”加载到同一个页面中,则可能会得到重复的字段名。其中一个包含正在保存的未更改的值。ASP.NET如何才能知道两者的区别?您只想提交来自EditTemplate的那些,这将需要一个单独的表单(或其他一些黑客)。

或者您的HTML按钮没有给ASP.NET重新填充控件所需的信息。您是否在页面中与ViewState一起使用FormView?

总之,这听起来像是技术的多毛组合.如你所知。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1364570

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文