Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么单击的表格单元格内的按钮未定义_Javascript_Asp.net Mvc - Fatal编程技术网

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

Javascript 为什么单击的表格单元格内的按钮未定义,javascript,asp.net-mvc,Javascript,Asp.net Mvc,我无法解释为什么我单击表单元格中的一个按钮并尝试获取rowID-我看到它未定义 这是我的密码 @model Onion.Web.ViewModels.CategoryViewModel <script> function btnEdit_Click() { var par = this.parentNode.parentNode; alert(par.id); } </script> <

我无法解释为什么我单击表单元格中的一个按钮并尝试获取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>
@model Onion.Web.ViewModels.CategoryViewModel
函数btnEdit_Click()
{
VaR PAR=此。
警报(第id段);
}
身份证件
标题
按钮
@foreach(Model.lstCategoryLanguages中的变量项)
{
@项目.标题
@项目.简要说明
}

我认为
这个
返回了错误的上下文

尝试在onclick事件中传递此,并在函数中使用参数:

onclick='btnEdit_Click(this)'

我认为最好再绑定一次
@item.CategoryLanguagesID
,并传递该函数以摆脱静态的
parentNode.parentNode
引用。如果你的结构随着时间的推移而改变呢?您也必须始终修改函数。

我认为
返回了错误的上下文

尝试在onclick事件中传递此,并在函数中使用参数:

onclick='btnEdit_Click(this)'

我认为最好再绑定一次
@item.CategoryLanguagesID
,并传递该函数以摆脱静态的
parentNode.parentNode
引用。如果你的结构随着时间的推移而改变呢?您也必须始终修改函数。

我认为
返回了错误的上下文

尝试在onclick事件中传递此,并在函数中使用参数:

onclick='btnEdit_Click(this)'

我认为最好再绑定一次
@item.CategoryLanguagesID
,并传递该函数以摆脱静态的
parentNode.parentNode
引用。如果你的结构随着时间的推移而改变呢?您也必须始终修改函数。

我认为
返回了错误的上下文

尝试在onclick事件中传递此,并在函数中使用参数:

onclick='btnEdit_Click(this)'

我认为最好再绑定一次
@item.CategoryLanguagesID
,并传递该函数以摆脱静态的
parentNode.parentNode
引用。如果你的结构随着时间的推移而改变呢?您还必须始终修改函数。

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

这对我很有用:

<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>

功能btnEdit_单击(元素)
{
VAR PAR=元素。
警报(第id段);
}
身份证件
标题
按钮
@foreach(Model.lstCategoryLanguages中的变量项)
{
@项目.标题
@项目.简要说明
}

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

这对我很有用:

<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>

功能btnEdit_单击(元素)
{
VAR PAR=元素。
警报(第id段);
}
身份证件
标题
按钮
@foreach(Model.lstCategoryLanguages中的变量项)
{
@项目.标题
@项目.简要说明
}

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

这对我很有用:

<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>

功能btnEdit_单击(元素)
{
VAR PAR=元素。
警报(第id段);
}
身份证件
标题
按钮
@foreach(Model.lstCategoryLanguages中的变量项)
{
@项目.标题
@项目.简要说明
}

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

这对我很有用:

<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>

功能btnEdit_单击(元素)
{
VAR PAR=元素。
警报(第id段);
}
身份证件
标题
按钮
@foreach(Model.lstCategoryLanguages中的变量项)
{
@项目.标题
@项目.简要说明
}



什么是未定义的?<代码> PAR <代码>或>代码> PAR。ID<代码>父节点-这意味着PAR是未定义的。例外情况是-它无法获取未定义的parrentNode。parentNode未定义!!!!可以使用jQuery吗?不能使用parentnode,必须使用document.GetElementById。什么是未定义的?<代码> PAR <代码>或>代码> PAR。ID<代码>父节点-这意味着PAR是未定义的。例外情况是-它无法获取未定义的parrentNode。parentNode未定义!!!!可以使用jQuery吗?不能使用parentnode,必须使用document.GetElementById。什么是未定义的?<代码> PAR <代码>或>代码> PAR。ID<代码>父节点-这意味着PAR是未定义的。例外情况是-它无法获取未定义的parrentNode。parentNode未定义!!!!可以使用jQuery吗?不能使用parentnode,必须使用document.GetElementById。什么是未定义的?<代码> PAR <代码>或>代码> PAR。ID<代码>父节点-这意味着PAR是未定义的。例外情况是-它无法获取未定义的parrentNode。parentNode未定义!!!!你能使用jQuery吗?你不能使用parentnode,你必须实际使用document.getElementById——你完全正确。我无法解释为什么它会起作用!!但是为什么在oncli属性中,this属于函数的所有者,Btn_Click()方法,它的所有者是buttonelement而不是window元素,这是因为
this
返回的是window元素而不是按钮。window元素没有parentNode属性。你说的“oncli”是什么意思?你是对的。但函数的所有者不是按钮。你把函数