xml分页+ajax请求数据源+dom取结果

本文介绍了一个基于Ajax实现的数据选择功能,通过下拉框选择不同的分类,动态加载对应的数据并展示。支持分页和搜索功能,点击表格行可获取选中数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近做的一个项目里的某个小功能,主要是为了方便选择数据

演示地址:由于有恶意程序,所以去掉地址

效果图如下:

解决思路:

1.单击[选择]时,根据当前选择(下拉框)的分类ID,使用ajax请求,取得数据源(服务端使用dataSet.getXml()输出,因为数据量不是很大,所以就偷懒了)

2.客户端使用xml数据岛分页显示(使用数据岛分页比较简单,不用写太多的代码)

3.搜索时,根据当前选择(下拉框)的分类ID,和搜索关键字,重新使用ajax请求(好像也可以使用xml的结果过滤,但为了方便,重新请求算了),跳到第2步显示

4.取数据时,单击某行时,使用onclick事件,把当前行的tr做为参数,使用dom操作就可以得到tr里的td的值

附:由于没考虑到其它细节的问题,所以代码有点乱,希望各位能多多指导,各位的批评就是我进步的最好的捷径.谢谢

贴出全部代码,希望能和大家相互交流一下

index.html  显示页面:

         < select  id ="productID"  onchange ="changeID()"  NAME ="productID" >
            
< option  value ="1"  selected > 1111 </ option >
            
< option  value ="2" > 2222 </ option >
            
< option  value ="3" > 3333 </ option >
        
</ select >< br >
        
< table >
            
< tr >
                
< td >< input  id ="selectValue"  type ="text"  size ="40" ></ td >< td >< href ='#'  onclick ='show()' >< img  src ='img/btnSelect.gif'  /></ a ></ td >
            
</ tr >
        
</ table >         
        
< div  id ="selectData" ></ div >
        
< input  id ="abc"  type ="text"  size ="50%"   />

data.js   所有操作js代码

getXml.aspx  服务端数据源

         private   void  Page_Load( object  sender, System.EventArgs e)
        
{
            Response.Write(GetData());
            Response.End();
        }


        
private   string  GetData()
        
{
            
string id = Request.QueryString["id"];
            
string key = Request.QueryString["key"];

            
string sql = "select * from T_user where F_id = " + id;
            
if (key.Length > 0){sql += " and F_id like '%" + key + "%'or F_passWord like '%" + key + "%' or F_userName like '%" + key + "%'";}

            StringBuilder sb 
= new StringBuilder();
            sb.Append(
"<?xml version=/"1.0/"?>");
            SqlConnection conn 
= new SqlConnection("server=.;uid=sa;pwd=sa;database=WebTest");
            conn.Open();
            SqlDataAdapter da 
= new SqlDataAdapter(sql,conn);
            DataSet ds 
= new DataSet();
            da.Fill(ds);
            conn.Close();
            sb.Append(ds.GetXml());
            
return sb.ToString();
        }

 

http://www.cnblogs.com/lxxnet/archive/2006/09/02/493050.html
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值