日期:2014-05-17  浏览次数:20491 次

JS弹出画面并传值问题!
html

<div align ="center" id="DivGridview">
<asp:GridView ID="Grv_Outlay" Width="100%" AutoGenerateColumns="False" DataKeyNames="Serviceid">
<Columns>
<asp:BoundField DataField="RName" HeaderText="序号">
</asp:BoundField>
...
....
</Columns>
<asp:TemplateField HeaderText="操作">
   <ItemTemplate>
       <table border="0" cellpadding="0" cellspacing="0">
            <tr>
                <td>
                   <asp:CheckBox ID="CheckBox1" onclick="SelectRadio('DivGridview',this)" runat="server" />
                 </td>
            </tr>
       </table>
   </ItemTemplate>
</asp:GridView>
</div>
<asp:Button ID="btn_XZ" CssClass="button" runat="server" Text="选择" />

我想用户点击某一个CheckBox 的时候把这一行数据的DataKeyNames 带出来
然后弹出某一个画面 并把这个DataKeyNames 的值传过去
JS不会写 只知道后台是这么写的
string id = Grv_Outlay.DataKeys[i].Value.ToString();

求解...

目前JS没有思路 只知道弹出是真么写的 但是不知道怎么获取选择的这个DataKeyNames 的值

<script language="javascript" type="text/javascript">
//如何获取gridview中的DataKeyNames 值
str=.....
//新窗口
var srcFile = "SelectName.aspx?Bm=" + escape(str) + "";
//高度,位置等
var winFeatures = "dialogHeight:550px; dialogLeft:300px;";
window.showModalDialog(srcFile, winFeatures);
</script>

------解决方案--------------------
这个真心不好说  自己下去捉摸一下jquery 你会发现其实要实现这个功能很简单
------解决方案--------------------
 <asp:CheckBox ID="CheckBox1" data-bind="你想获取的值" onclick="SelectRadio('DivGridview',this)" runat="server" />

$("checkbox").click(function(){
   alert($(this).attr("data-bind"));
});
------解决方案--------------------
用ls的方法吧,那样简单
------解决方案--------------------
lz用checkbox传递过去的是什么呢?也可以用隐藏域,把值放在里面可以了,然后用js获取。