获取子元素HTML的ID

时间:2018-08-03 07:01:04

标签: javascript php jquery html

我有这样的javascript代码:

<tr id='$stavkaid'>
    <td class='nonEditableData'>$naziv</td>
    <td contenteditable='true' class='editableData' onkeypress='return (event.charCode == 8 || event.charCode == 0 || event.charCode == 13 || event.charCode == 46) ? null : event.charCode >= 48 && event.charCode <= 57' onblur='if(innerHTML.length <= 0) { innerHTML = 0 }else{ innerHTML = innerHTML, checkInput(parentNode.id)}'>$kolicina</td>
    <td contenteditable='true' class='editableData' onkeypress='return (event.charCode == 8 || event.charCode == 0 || event.charCode == 13 || event.charCode == 46) ? null : event.charCode >= 48 && event.charCode <= 57' onblur='if(innerHTML.length <= 0) { innerHTML = 0 }else{ innerHTML = innerHTML, checkInput(parentNode.id)}'>$pcbp</td>
    <td contenteditable='true' class='editableData' onkeypress='return (event.charCode == 8 || event.charCode == 0 || event.charCode == 13 || event.charCode == 46) ? null : event.charCode >= 48 && event.charCode <= 57' onblur='if(innerHTML.length <= 0) { innerHTML = 0 }else{ innerHTML = innerHTML, checkInput(parentNode.id)}'>$rabat</td>
    <td class='nonEditableData'>$pcsp</td>
    <td class='nonEditableData'>$pvsp</td>
</tr>

如您所见3 td内部,我运行了JavaScript函数checkInput(parentNode.id)

函数如下:

function checkInput(stavkaID)
{
    alert(stavkaID);
}

它像魅力一样工作,但是现在我想要的是以某种方式获取其中选择tr的每一行stavkaID的值。

所以我想到的是如何在函数内部做这样的事情

function checkInput(stavkaID)
{
    var naziv = getElementById(stavkaID).nowSomehowIdentifyTDWithValueFor(naziv).innerHTML;
    //And like this for other 5 variables
}

我知道我可以使用this遍历tr的每个元素,但是问题是确定我的循环当前位于td

我无法设置td的ID,因为它是静态的,下次我创建tr时,它将具有相同的ID,这是不可能的。

1 个答案:

答案 0 :(得分:0)

使用this

onkeypress="...; checkInput(parentNode.id, this)"

function checkInput(stavkaId, td) {
   console.log(stavkaId, td);
}