CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

马上结贴的问题。。。

楼主nekiy(云淡风清)2006-03-08 11:08:08 在 .NET技术 / ASP.NET 提问

我有一个5行的table,里面是一条数据的其中5个字段,每行有一个textbox控件,一个按钮,用来动态添加文本框的(用js生成,否则会有闪),但是每行只能生成一个文本框。当用户提交以后分别获取这些js生成的文本值,当然有的有值有的没有值,并把这些值插入到相应的数据库字段里面。   期待高手解决,解决马上结贴~ 问题点数:100、回复次数:10Top

1 楼songxiaozhao(雨朋)回复于 2006-03-08 11:30:23 得分 15

没怎么明白,帮你顶一个Top

2 楼yipiaoqingshui(一瓢清水)回复于 2006-03-08 11:30:49 得分 15

这些生成的文本你是不是可以获取到她的值,你按照,分隔开来.然后存到一个   隐藏的控件值里面.然后.CS里面获取到.然后spilt(",")就分别取值了.Top

3 楼hdt(倦怠)回复于 2006-03-08 11:33:04 得分 10

http://www.caae.com.cn/hdt/ajaxgrid/webform1.aspxTop

4 楼nekiy(云淡风清)回复于 2006-03-08 12:58:50 得分 0

可以通过  
  <script   language="javascript">  
  Function.prototype.bind   =   function(o)  
  {  
  var   self   =   this;  
  var   arg     =   Array.prototype.slice.apply(arguments,[1]);  
  return   function(){  
  self.apply(o,arg);  
  }  
  }  
  var   inputs   =   document.getElementById("tbl").getElementsByTagName("input");  
  for(var   i=0;i<inputs.length;i++)  
  {  
  var   f   =   function(i){  
  var   box   =   "<input   type='text'   name='textbox"+i+"'/>";  
  this.parentNode.nextSibling.innerHTML   =   box;  
  }  
  inputs[i].onclick=   f.bind(inputs[i],i);  
  }  
  </script>  
  点击按钮时可以显示一个文本框,在后台可以通过request.form[TextBoxname]来获取值吗??  
  Top

5 楼nekiy(云淡风清)回复于 2006-03-08 13:19:22 得分 0

请高手帮帮忙啊~~~!  
  js生成的文本框是不能取得它的值吗????????  
  request.form[TextBoxname]也不可以吗???????Top

6 楼lidong6(立冬)回复于 2006-03-08 13:30:23 得分 8

把他的值放到隐藏控件中.<input   type=hidden...>Top

7 楼nekiy(云淡风清)回复于 2006-03-08 13:53:14 得分 0

help~~~~~~~~~~~~~~~~~~~`  
                              SOS....................Top

8 楼nameone(过客)回复于 2006-03-08 14:20:49 得分 5

UPTop

9 楼liupeng1981(葵花点穴手~!!)回复于 2006-03-08 14:31:33 得分 10

name   可以重名,你在后台   通过Request.form["name"]//文本框name  
  可以获得以逗号分割的文本框的值   在拆分就可以了  
  Top

10 楼cat_hsfz(我的新Blog在http://cathsfz.cnblogs.com)回复于 2006-03-08 15:25:27 得分 37

首先把你这个东西封装为一个WebControl,不要觉得这个麻烦,一旦你这样做了以后这东西就可以扩展和复用了。  
   
  如何封装?我会这样设计。首先这个WebControl的根元素是<table>,同时它实现INamingContainer接口,如果你要和数据打交道那就加上数据绑定相关的属性,Render()时也就按照一般的方式进行,反正这看起来像一个轻量级的DataGrid/GridView。然后就是关键部分也就是动态添加部分了,我不确认客户端动态生成的控件如果服务器端接收到Postback时生成同名控件是否能成功Load到原数据,所以我建议你把整个<table>里的数据保存到hidden里面,这个hidden是runat="server"的,你封装的WebControl从这个hidden(实际上是别为HtmlGenericControl)中读取数据并映射到对应的属性上去。  
   
  至于数据库方面,最标准的做法当然是:数据层<->业务逻辑层<->页面上的DataSource控件<->你封装的那个WebControl的Bindable属性。因为那些Bindable属性与hidden中的数据的映射由WebControl内部的逻辑完成,所以一旦控件做好以后要复用会很方便,和普通的支持数据绑定的控件一样用。Top

相关问题

  • 马上结贴!
  • 求算法(马上结贴)
  • 在线等~~马上结贴
  • 小问题,马上结贴!
  • 小问题,马上结贴!
  • 马上结贴,马上给分:客户端调用!
  • 简单问题(马上给分,马上结贴)
  • mysql安装与配制问题(马上解决,马上结贴)
  • 打印问题,马上结贴!
  • 简单询问,马上结贴!

关键词

  • 控件
  • 数据
  • 属性
  • js
  • 文本框
  • 生成
  • 封装
  • 获取
  • 值
  • webcontrol

得分解答快速导航

  • 帖主:nekiy
  • songxiaozhao
  • yipiaoqingshui
  • hdt
  • lidong6
  • nameone
  • liupeng1981
  • cat_hsfz

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo