easyui datagrid行中点击a标签链接,行被选中,但是获取不到对应的参数

easyui中使用比较多的就是datagrid了,表格中添加连接,点击跳转,为比较常用的方式;往往在点及标签后调用getSeleted方法会失效;

一.初始代码:

{field: ‘id‘,title : ‘操作‘,align: ‘center‘,width:‘10%‘,

formatter:function(value,row){

return  "<a onclick=‘show()‘ > 查看 </a>";

}

},

function show(){

var select = $(‘#targetTable‘).datagrid("getSelected");

var selects = $(‘#targetTable‘).datagrid("getSelections");

/*获取不到正在点击的行*/

}

二.起因分析:

easyui中只有在触发选中行之后调用,getSeleted 和 getSelections 才能取到对应的结果值;先触发a标签方法,还是先触发选择行,

测试代码如下:

{field: ‘id‘,title : ‘操作‘,align: ‘center‘,width:‘10%‘,

formatter:function(value,row){

return  "<a onclick=‘show()‘ > 查看 </a>";

}

},

onClickRow : function(index,data){

alert(‘clickRow‘);

}

function show(){

alert("clickA");

}

点击页面按钮后你会发现先调用的show方法,后触发的onClickRow事件,

所以在show方法中想要获取选中的行是不可行的方式;

三.解决方式:

在调用的时候进行值得传递;

在进行a标签拼接的过程中在对应的方法中传入参数;

四.解决代码如下:

{field: ‘id‘,title : ‘操作‘,align: ‘center‘,width:‘10%‘,

formatter:function(value,row){

return "<a onclick=\"show(‘"+row.id+"‘)\" > 查看 </a>";

}

},

function show(id){

alert(id);

}

五.备注:

因使用easyui不是太多,更多的时候是帮别人解决问题的时候遇到测试的,

以上观点只为个人观点,非最优解决方案,欢迎大神给出更优解决方案,多多交流才有进步;

有新问题请留言,大家一起探讨一起进步;

时间: 2024-12-29 05:58:26

easyui datagrid行中点击a标签链接,行被选中,但是获取不到对应的参数的相关文章

怎么去除移动端点击a标签链接时的背景色

在手机端点击链接时会发现有一个背景色,有时候需要改变这个颜色,或者去除这个颜色,有时候a标签做成按钮时这个颜色的存在会很丑,像这样: 可以通过 -webkit-tap-highlight-color: rgba(0,0,0,0); 来去除这个高亮,这样在移动端点击按钮时就不会再有这个问题了

HTML 中点击&lt;a&gt;标签,页面跳转执行过程

HTML链接使用的是<a>标签 点击超链接,后台的执行大致如下: <a href="https://www.baidu.com">超链接</a> 根据链接地址看出,执行的是https协议 点击超链接,首先在本地的hosts文件(C:\Windows\System32\drivers\etc\hosts)中查找是否有与网址匹配的ip 如果没有, 跳转到网上查找网上dns,然后返回ip,接着跳转到相应的页面 //代码解释$("a").

jquery easyui datagrid 在翻页以后仍能记录被选中的行及刷新设置选中行数据

//easyUI的datagrid在复选框多选时,如何在翻页以后仍能记录被选中的行://注意datagrid中需要配置idField属性,一般为数据的主键 $.ajax({ type: 'GET', url:url, async:false, success: function (dt) { var grid = $('#list'); grid.datagrid('reload');//刷新表格数据 grid.datagrid({ onLoadSuccess:function(){ grid.

JS中点击a标签不跳转

在开发中发现,使用如下方式的链接. 在Chrome中点击后不会做任何跳转或者打开新标签页,但在Firefox下会新开标签页.<a href="JavaScript:void(0);" target="_blank">test</a> 后经查找资料,发现需如下解决.通过 false;" href="javascript:void(0);" target="_blank">test</

(转)ios中点击地图控件MKMapView的某点获取该点的经纬度

ios开发中常常会用到地图控件MKMapView,可以用如下方法在点击MKMapView中某点的时候获取改点的经纬度: 假如声明了一个MKMapView为myMapView 1.在地图中添加一个手势,这个手势是一个点击动作,点击时会调用tapPress这个方法 UITapGestureRecognizer *mTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapPress:)];[myMapV

微信端解决a标签链接 失效的问题

最近常碰到这个问题就是 在微信端点击a标签链接的时候,第一次正常界面跳转.但是,界面重新跳转回来再次点击a标签的话 .出现 界面不跳转,但是进度条加载完毕,点击多次页面无法跳转. 解决办法 在链接后边加上随机的参数(我这边加载的是时间戳): 比如说 $td参数 在控制器里面生成 部分安卓手机测试没发现之前的问题!!!!! iPhone手机部分检测也咩问题!!!!!!

Easyui 去掉datagrid 行的样式,并点击checked 改边行颜色!

--最近客户提出的需求 全选高亮样式太丑,每行选中不需要背景图片颜色,字体变黑色,未选中变灰色. 先把代码和改变后的图片 贴出来. /* 初始化DataFrid数据 */ initDataGrid: function () { var pNumber = 0; var pSize = 10; $('#listBuyer').datagrid({ method: 'post', url: 'PR012_TradeRelationService.ashx?Method=GetPR012_TradeR

easyUI中点击datagrid列标题排序

easyUI中点击datagrid的排序有两种,一种是本地的,一种是服务器的.本地的只能排序当前页,而服务器的可以对全部页进行排序.这里主要是分享下服务器排序. 1.为datagrid添加属性remoteSort:true 表示通过服务器请求来进行排序 2.对datagrid中你想要排序的列添加属性sortable:true 表示该列允许排序 3.这时候点击列标题就会自动向服务器发送带有sort和order两个参数的请求,此处的请求即调用动态绑定datagrid的查询方法 sort 表示排序字段

【easyUI】取消easyui行点击选中事件,智能通过勾选checkbox才能选中行

背景:项目中使用easyui作为前端架子.datagrid默认是点击行就选中此行然后变色. 需求:点击行不让此行选中:只能通过点击复选框才能选中某一行. 解决思路: 1.写点击行函数function onClickRow(rowIndex,rowData){} 2.查询当前datagrid所有选中行. 3.遍历选中行.对比选中行索引和点击行的索引:如果点击行的索引在所有选中行中,则取消点击行的选中状态:如果不存在,则选中点击行. 代码: <script type="text/javascr