如何通过使用MVC在图像上单击来从锚标记传递ID值onclick函数? [英] how to pass ID value onclick function from anchor tag by click on image using MVC?

查看:77
本文介绍了如何通过使用MVC在图像上单击来从锚标记传递ID值onclick函数?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

基于数据库的值状态将为Y或N.如果为Y,则它将为active.png.它工作正常.当我单击active.png图像时,锚标记onclick="GetRecords1(' + item.ModuleID + ');函数ID值未传递给事件.

Based on the database value status will be Y or N. If it Y means it will active.png will be displayed. it is working fine. when i click active.png image then anchor tag onclick="GetRecords1(' + item.ModuleID + '); Function the ID value is not passed to the event.

如何传递active.png图像,请单击ID值.

How to pass the active.png image click the ID value.

<script>
    $(document).ready(function () {
        $("#DomainID").change(function () {
            var id = $(this).val();
            $("#example tbody tr").remove();
            $.ajax({
                type: 'POST',
                url: '@Url.Action("ViewModules")',
                dataType: 'json',
                data: { id: id },
                success: function (data) {
                    var items = '';
                    $.each(data.EmpList, function (i, item) {
                        $("#findValue").show();
                        /*Find Role here - Comparing Emp List ModuleId to RoleList ModuleId*/
                        var RoleName = $(data.role).filter(function (index, item) {
                            return item.ModuleID == item.ModuleID
                        });

                        if (item.ParentModuleID == -1) {
                            item.ModuleName = " -- " + item.ModuleName
                        } else {
                            item.ModuleName = item.ModuleName
                        }
                        var Status = '';
                        if (item.Status == "Y") {
                            Status = '<a href="JavaScript:void(0)" onclick="GetRecords1(' + item.ModuleID + ');" title="Disable status"><img src="/img/Active.png" height="22" width="42"/></a>'
                        } else {
                            Status = '<a href="JavaScript:void(0)" id="inActiveStatus" title="Active status"><img src="/img/InActive.png" height="22" width="42"/></a>'
                        }

                        var rows = "<tr>"
                            + "<td>" + (i + 1) + "</td>"
                            + "<td>" + item.ModuleName + "</td>"
                            + "<td>" + item.Url + "</td>"
                            + "<td>" + RoleName[i].RoleName + "</td>"
                            + "<td>" + '<a href="@Url.Action("EditModules", "Account")?id=' + item.ModuleID + '" class="font-icon font-icon-pencil" title="Edit"></a>&nbsp;&nbsp;&nbsp;' + Status + "</td>"
                            + "</tr>";
                        $('#example tbody').append(rows);
                    });
                },
                error: function (ex) {
                    var r = jQuery.parseJSON(response.responseText);
                        alert("Message: " + r.Message);
                        alert("StackTrace: " + r.StackTrace);
                        alert("ExceptionType: " + r.ExceptionType);
                }
            });
            return false;
        });
    });
</script>

通过:

<script>
    $(document).ready(function () {
        $('#example tbody').on('click', function GetRecords1(ModuleID) {
            var id = ModuleID;
            alert("Status Clicked:" + ModuleID);
        });
    });
</script>

推荐答案

为什么要使用嵌入式JavaScript.您可以轻松地使用事件委托上绑定点击事件.

Why you are using in-line JavaScript. you can easily use event delegate on to bind click event.

这是您修改的代码.

Status = '<a href="JavaScript:void(0)" data-id="@item.ModuleID" data-status="@item.Status" class="user-status" title="Disable status"><img src="/img/Active.png" height="22" width="42"/></a>'

在标签中添加了一个用户状态类.并将id分配给data-id属性.

Added a class user-status to a tag. and assign id to data-id attribute.

现在从点击事件中获取ID.

now get id from click event.

$(document).on('click','.user-status', function(){
  var getId = $(this).data('id');
  var getStatus = $(this).data('status');
  alert("Status Clicked:" + getId );
});

这篇关于如何通过使用MVC在图像上单击来从锚标记传递ID值onclick函数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆