简体   繁体   English

在innerhtml中按ID查找元素

[英]find element by id in innerhtml

I have an asp.net gridview with one column as a template filed with a panel with some controls like textbox and dropdown list. 我有一个asp.net gridview,其中一栏作为模板,与带有一些控件(如文本框和下拉列表)的面板一起提交。 So, onclick, with js I can give the value of a cell by row and column, but in this panel column how can I get the inner elements? 因此,onclick使用js可以按行和列给出单元格的值,但是在此面板列中如何获取内部元素?

function t3(tab, element, NParents, col)
{
    //alert("t3")
    var grd = document.getElementById(tab);
    if (grd != null)
    {
        var row = element

        for (i = 0; i < NParents; i++)
        {
            row = row.parentNode
        }

        alert(grd.rows[row.rowIndex].cells[col].innerHTML)
    }
}

innerHtml give me the HTML of the panel, now how can I find its elements? innerHtml给我面板的HTML,现在如何找到它的元素?

but in this panel column how can i get the inner elements? 但是在此面板列中,我如何获取内部元素?

You can use querySelector to query the DOM element 您可以使用querySelector查询DOM元素

var cell = grd.rows[row.rowIndex].cells[col];
var textbox = cell.querySelector( "input[type='text']" ); //will return input box inside the text
var select = cell.querySelector( "select" ); //will return dropdown inside the text

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM