问题描述
GridView分页显示数据,我想实现点击某行,则将该行的指定几个列的值输入到本页TextBox中,测试代码如下:前台:<scriptlanguage="javascript"type="text/javascript">functiongetElementOnPage(value){window.document.getElementById("<%=TextBox1.ClientID%>").value=value;//给指定TextBox赋值}</script>
后台:protectedvoidGridView2_RowDataBound(objectsender,GridViewRowEventArgse){if(e.Row.RowType==DataControlRowType.DataRow){//当我只需要输出某行指定列的数据,也就是只有一个数据时,功能是正常的,点哪一页哪一行都能得到指定值//e.Row.Attributes.Add("onclick","getElementOnPage('"+e.Row.Cells[2].Text+"')");//当我需要某行几个指定列的值时,第一页数据的前两行点击无反应,第三行以下可以获取值,第二三四页,第一行没反应,第二行以下正常stringstrTemp=e.Row.Cells[2].Text+e.Row.Cells[7].Text+e.Row.Cells[6].Text+e.Row.Cells[8].Text;e.Row.Attributes.Add("onclick","getElementOnPage('"+strTemp+"')");}}
搞不清楚,为什么只要一个值的时候,都能正常获取,而取多几个值,就出现第一页前两行无反应,第二三四五页第一行无反应的情况呢?e.Row.Cells[index].Text获取的值末尾自动带"rn",这个会不会影响绑定结果呢?此外,后台绑定OnClick()到前台,用JS将结果输出到本页的TextBox,为啥"rn"、“<br>”会无效呢?谢谢各位大虾的指教,^_^
解决方案
解决方案二:
问题解决了,谁来回个帖让我结贴呀就是"rn"导致的问题,替换掉r,替换掉n,然后在需要换行的地方用转义:\n,ok给碰到同样问题的朋友
解决方案三:
我来了,给分哈