通过儿童元素获得Div

时间:2018-04-26 16:22:38

标签: javascript html primefaces

我有以下代码

<div id="faqEntries">
    <p:inputText disabled="true" class="telDialogField"></p:inputText>
    <br/>
    <p:inputTextarea disabled="true" class="telDialogField"></p:inputTextarea>
    <br/>
    <p:button value="In Ticket übernehmen" class=" telDialogButton"></p:button>
</div>

这部分用于显示数据库中的faq条目。这部分嵌套在ui:repeat中。

我现在要做的是在点击按钮时获取周围的Div,以便我可以在之后获得Textarea并将此文本复制到其他TextArea。 我只是尝试使用id标签来做这个,但这似乎不适用于ui:repeat。

我知道如何将内容复制到另一个textarea而不是如何获取第一个textarea。

2 个答案:

答案 0 :(得分:0)

有两种方式。

纯Javascript:

var pDoc = document.getElementById("yourDiv");
var parentDiv = pDoc.parentNode;

使用Jquery:

var parentDiv = $("#yourDiv").parent()

答案 1 :(得分:0)

您可以使用.parentElement属性获取父元素。

<div id="faqEntries">
    <p:inputText disabled="true" class="telDialogField"> 
    </p:inputText>
    <br/>
    <p:inputTextarea disabled="true" class="telDialogField"> 
    </p:inputTextarea>
    <br/>
    <p:button onclick="foo(this.parentElement);" value="In Ticket übernehmen" class=" telDialogButton"> 
    </p:button>
</div>

然后foo()函数可以对父元素执行任何操作。

function foo(parent){
    alert(parent.nodeName);
}