Javascript 为什么单击的表格单元格内的按钮未定义
我无法解释为什么我单击表单元格中的一个按钮并尝试获取rowID-我看到它未定义 这是我的密码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> <
@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”是什么意思?你是对的。但函数的所有者不是按钮。你把函数