javascript - 为什么单击的表格单元格内的按钮未定义

标签 javascript asp.net-mvc

我无法解释为什么我单击表格单元格内的按钮并尝试获取 rowID - 我发现它未定义

这是我的代码

@model Onion.Web.ViewModels.CategoryViewModel

<script>
    function btnEdit_Click()
    {

            var par = this.parentNode.parentNode;

            alert(par.id);


    }
</script>
<table>
    <tr>
        <td>ID</td>
        <td>Title</td>
        <td>Button</td>
    </tr>
    @foreach (var item in Model.lstCategoryLanguages)
    {
        <tr id='@item.CategoryLanguagesID'>
            <td>@item.Title</td>
            <td>@item.ShortDescription</td>
            <td><input type="button"  value="Edit" onclick='btnEdit_Click()' /></td>
        </tr>
    }
</table>

最佳答案

您需要将要引用的元素传递给函数,然后在函数中使用它。

这对我有用:

<script>
    function btnEdit_Click(elem)
    {

            var par = elem.parentNode.parentNode;

            alert(par.id);


    }
</script>
<table>
    <tr>
        <td>ID</td>
        <td>Title</td>
        <td>Button</td>
    </tr>
    @foreach (var item in Model.lstCategoryLanguages)
    {
        <tr id='@item.CategoryLanguagesID'>
            <td>@item.Title</td>
            <td>@item.ShortDescription</td>
            <td><input type="button"  value="Edit" onclick='btnEdit_Click(this)' /></td>
        </tr>
    }
</table>

关于javascript - 为什么单击的表格单元格内的按钮未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21427512/

相关文章:

c# - 生成替换一个参数的路由

javascript - 删除html页面中的多余空间

javascript - 在 Fiddler 中看不到 ASP.NET bundle 文件

javascript - 如何在包含同步和异步函数的 Observables 的 RxJS 中创建合适的队列

c# - 如何在 ASP.NET MVC 2.0 中对多个属性进行自定义验证?

jquery - CSS对齐问题

javascript - 我们可以从数据库中获取值并将它们显示在 javascript 的选择框中吗

javascript - 在 div block 中显示用户数据

c# - MVC - 将附加信息传递给 View

c# - Asp.Net MVC 2 - 将模型的属性绑定(bind)到不同的命名值