js弹出窗体选取Gridview中多行数据
2008-08-23 10:59
169 查看
这里要实现的效果类似与手机短信的群发,写好一条信息后,然后收信人可以弹出一个小窗体,弹出窗体里显示的是一个通讯录,类似与上一篇文章写的那样,左边是目录右边是联系人,选好后,就将数据传回给父窗体中的收信人文本框。全部由js脚本来实现。好,现在来看看具体的实现。两个页面,发送信息页面MsgSend.aspx,选取联系人页面SelectCellphone.aspx页面,这个页面和上篇文章一样左边是一个iframe id 是“left” src是department.aspx,右边也是个iframe id是“right” src是contactors.aspx。
MsgSend.aspx前台脚本:
[align=left] function chooose(UID) [/align]
[align=left] { [/align]
[align=left] var url = 'http://localhost/ChooseCellPhone/Default.aspx?UID=' + UID; [/align]
[align=left] var reValue = window.showModalDialog(url,null,'dialogWidth=550px;dialogHeight=450px;help:no;status:no;scroll=no;');//模态弹出通讯录窗体 [/align]
[align=left] if(reValue != false && reValue != undefined) [/align]
[align=left] { [/align]
[align=left] var index = reValue.indexOf(','); [/align]
[align=left] var tel = reValue.substr(0, index); [/align]
[align=left] var user = reValue.substr(index+1, reValue.length); [/align]
[align=left] formData.txtSendTo.value = user;//收信人姓名 [/align]
[align=left] formData.txtSendToMobile.value = tel;//收信人电话号码 [/align]
[align=left] } [/align]
[align=left] [/align]
[align=left] //return false; [/align]
}
SelectCellphone.aspx前台脚本
[align=left] function selectCellphone() [/align]
[align=left] { [/align]
[align=left] var phonelist = ""; [/align]
[align=left] [/align]
[align=left] var o = window.parent.frames["right"].document.form1.elements; [/align]
[align=left] if(window.parent.frames["right"].GridView1 != null) [/align]
[align=left] { [/align]
[align=left] for(var j=0;j< window.parent.frames["right"].GridView1.rows.length;j++ ) [/align]
[align=left] { [/align]
[align=left] [/align]
[align=left] if(o[j+2].type=="checkbox"&&o[j+2].checked) [/align]
[align=left] { [/align]
[align=left] if(window.parent.frames["right"].GridView1.rows(j+1).cells(2).innerText != "")//gridview控件显示出来后其实是个table,第一列是checkbox选择框,第2列是人员姓名,第3列是手机号码 [/align]
[align=left] { [/align]
[align=left] phoneList += window.parent.frames["right"].GridView1.rows(j+1).cells(2).innerText ; [/align]
[align=left] if(phonelist!= "" ) phonelist += ";"; [/align]
[align=left] } [/align]
[align=left] } [/align]
[align=left] } [/align]
[align=left] [/align]
[align=left] var userlist = ""; [/align]
[align=left] for(var k=0;k< window.parent.frames["right"].GridView1.rows.length;k++ ) [/align]
[align=left] { [/align]
[align=left] [/align]
[align=left] if(o[k+2].type=="checkbox"&&o[k+2].checked) [/align]
[align=left] { [/align]
[align=left] if(window.parent.frames["right"].GridView1.rows(k+1).cells(2).innerText != "") [/align]
[align=left] { [/align]
[align=left] userlist += window.parent.frames["right"].GridView1.rows(k+1).cells(1).innerText ; [/align]
[align=left] if( userlist != "" ) userlist += ";"; [/align]
[align=left] } [/align]
[align=left] } [/align]
[align=left] } [/align]
[align=left] var returnValue = phonelist + "," + userlist;//将收集号码和人员姓名组成字符串 [/align]
[align=left] window.returnValue= returnValue;//返回值 [/align]
[align=left] } [/align]
[align=left] CloseWindow(); //关闭弹出窗体 [/align]
[align=left] [/align]
[align=left] [/align]
}
[align=left] function CloseWindow() [/align]
[align=left] { [/align]
[align=left] window.opener = -1; [/align]
[align=left] window.close(); [/align]
}
其实这个也没什么难点,主要是对table的操作,怎么读取table里面的值,读取table的行数window.parent.frames["right"].GridView1.rows.length,读取table里面td的值window.parent.frames["right"].GridView1.rows(k+1).cells(2).innerText,table的cell和gridveiw一样也是从0列开始的
MsgSend.aspx前台脚本:
[align=left] function chooose(UID) [/align]
[align=left] { [/align]
[align=left] var url = 'http://localhost/ChooseCellPhone/Default.aspx?UID=' + UID; [/align]
[align=left] var reValue = window.showModalDialog(url,null,'dialogWidth=550px;dialogHeight=450px;help:no;status:no;scroll=no;');//模态弹出通讯录窗体 [/align]
[align=left] if(reValue != false && reValue != undefined) [/align]
[align=left] { [/align]
[align=left] var index = reValue.indexOf(','); [/align]
[align=left] var tel = reValue.substr(0, index); [/align]
[align=left] var user = reValue.substr(index+1, reValue.length); [/align]
[align=left] formData.txtSendTo.value = user;//收信人姓名 [/align]
[align=left] formData.txtSendToMobile.value = tel;//收信人电话号码 [/align]
[align=left] } [/align]
[align=left] [/align]
[align=left] //return false; [/align]
}
SelectCellphone.aspx前台脚本
[align=left] function selectCellphone() [/align]
[align=left] { [/align]
[align=left] var phonelist = ""; [/align]
[align=left] [/align]
[align=left] var o = window.parent.frames["right"].document.form1.elements; [/align]
[align=left] if(window.parent.frames["right"].GridView1 != null) [/align]
[align=left] { [/align]
[align=left] for(var j=0;j< window.parent.frames["right"].GridView1.rows.length;j++ ) [/align]
[align=left] { [/align]
[align=left] [/align]
[align=left] if(o[j+2].type=="checkbox"&&o[j+2].checked) [/align]
[align=left] { [/align]
[align=left] if(window.parent.frames["right"].GridView1.rows(j+1).cells(2).innerText != "")//gridview控件显示出来后其实是个table,第一列是checkbox选择框,第2列是人员姓名,第3列是手机号码 [/align]
[align=left] { [/align]
[align=left] phoneList += window.parent.frames["right"].GridView1.rows(j+1).cells(2).innerText ; [/align]
[align=left] if(phonelist!= "" ) phonelist += ";"; [/align]
[align=left] } [/align]
[align=left] } [/align]
[align=left] } [/align]
[align=left] [/align]
[align=left] var userlist = ""; [/align]
[align=left] for(var k=0;k< window.parent.frames["right"].GridView1.rows.length;k++ ) [/align]
[align=left] { [/align]
[align=left] [/align]
[align=left] if(o[k+2].type=="checkbox"&&o[k+2].checked) [/align]
[align=left] { [/align]
[align=left] if(window.parent.frames["right"].GridView1.rows(k+1).cells(2).innerText != "") [/align]
[align=left] { [/align]
[align=left] userlist += window.parent.frames["right"].GridView1.rows(k+1).cells(1).innerText ; [/align]
[align=left] if( userlist != "" ) userlist += ";"; [/align]
[align=left] } [/align]
[align=left] } [/align]
[align=left] } [/align]
[align=left] var returnValue = phonelist + "," + userlist;//将收集号码和人员姓名组成字符串 [/align]
[align=left] window.returnValue= returnValue;//返回值 [/align]
[align=left] } [/align]
[align=left] CloseWindow(); //关闭弹出窗体 [/align]
[align=left] [/align]
[align=left] [/align]
}
[align=left] function CloseWindow() [/align]
[align=left] { [/align]
[align=left] window.opener = -1; [/align]
[align=left] window.close(); [/align]
}
其实这个也没什么难点,主要是对table的操作,怎么读取table里面的值,读取table的行数window.parent.frames["right"].GridView1.rows.length,读取table里面td的值window.parent.frames["right"].GridView1.rows(k+1).cells(2).innerText,table的cell和gridveiw一样也是从0列开始的
相关文章推荐
- js中使用弹出窗体
- 如何将弹出层的数据通过JS传回父页面
- 类似MSN弹出窗体的JS
- js入门·移动窗体/弹出提示
- js获取GridView中行数据的两种方法 分享
- 在GridView中,点击commandFiled列 删除指定行数据时,弹出询问对话框
- gridview双击弹出新窗体
- js 获取浏览器窗体宽高数据
- vs2005C# winfrom开发中如何在textbox输入的时候自动模糊的弹出可选数据的窗体?
- javascript to fullscreen(js弹出窗体)
- 从GridView中直接导出数据到Excel文件 处理导出乱码 类型“GridView”的控件“XXXX”必须放在具有 runat=server 的窗体标记内。”的异常
- JS窗口问题处理:使弹出窗口保持前端显示的几种方法,及window窗体对象open()和showModalDialog()用法
- JS窗口问题处理:使弹出窗口保持前端显示的几种方法,及window窗体对象open()和showModalDialog()用法
- 弹出windows窗体(js)
- 使用jQuery fancybox插件打造一个实用的数据传输模态弹出窗体
- JS获取 asp.net GridView数据
- ajax弹出模态窗体上绑定gridview问题
- 后台给GridView绑定数据时给每一行添加一个JS方法
- php的表单提交(post接收数据)和js弹出框的应用
- A窗体点按钮,弹出B窗体,B窗体修改了内容后,将数据传递回来到A窗体