我的任务:设计一个服务器端控件,控件默认一行含几个文本框,
每行填加一个按钮add,点击按钮填加一行,
每行填加一个按钮del,点击按钮删除该行。要求:1。add及del在客户端运行,不能涉及页面提交。
2。可以服务器端对控件取值,比如我这个控件名字叫list,那可以用list.value取得用户填入的值。
3。所有取赋值要在控件内部完成,即不能利用引用该控件的页面的request来取得控件的值。就是说,如果有人用了我这个控件,在服务器端填加该控件,该控件自动根据设置将list.value存入数据库,也就是用户不干预取值过程。由控件自己处理。
每行填加一个按钮add,点击按钮填加一行,
每行填加一个按钮del,点击按钮删除该行。要求:1。add及del在客户端运行,不能涉及页面提交。
2。可以服务器端对控件取值,比如我这个控件名字叫list,那可以用list.value取得用户填入的值。
3。所有取赋值要在控件内部完成,即不能利用引用该控件的页面的request来取得控件的值。就是说,如果有人用了我这个控件,在服务器端填加该控件,该控件自动根据设置将list.value存入数据库,也就是用户不干预取值过程。由控件自己处理。
2.对于客户端生成的控件要在服务器端取指比较难吧,我的方法是在提交前把动态生成控件的数据和ID按照一定分割符保存在一个隐藏的文本框,从而在服务器端操作这个文本框...
3.采用我那个方法应该不需要用户干预了仅供参考~
另外,因为控件是动态调用,在他下面可能会有其他控件,这样的话下面控件的位置该如何控制呢。说明一下:这个控件只是某个大控件的子控件,大控件包括很多子控件,子控件的定位属于绝对定位那种,即postion:absolute那种。
如果控件增加行的事件是在服务端处理,那可以重新计算位置重新生成大控件,但事件在客户端处理的情况下怎么办呢?
我的控件中包括一个图片上传控件,就是HttpInputFile控件。我为其父控件定义了一个属性PostFile,计划当页面提交时将HttpInputFile的值存入PostFile,现在的问题是,只要涉及到页面刷新(非正常提交),我的HttpInputFile.PostFile就空了。
我想在页面刷新的时候直接就更新PostFile 的值,我应该在什么时候赋值?页面刷新的时候是否会重新执行CreateChildControls和RendContent?我应该在哪里赋值?
或者用JS直接生成控件数组。
然后再提交。我做过。
我的控件中包括一个图片上传控件,就是HttpInputFile控件。我为其父控件定义了一个属性PostFile,计划当页面提交时将HttpInputFile的值存入PostFile,现在的问题是,只要涉及到页面刷新(非正常提交),我的HttpInputFile.PostFile就空了。
我想在页面刷新的时候直接就更新PostFile 的值,我应该在什么时候赋值?页面刷新的时候是否会重新执行CreateChildControls和RendContent?我应该在哪里赋值?