JSP,Javascript,在另一个Id中获取ElementId

时间:2011-08-03 15:57:36

标签: javascript html jsp websphere-portal websphere-7

今天我的问题围绕着Websphere JSP环境中的javascript世界......

我的代码有点像这样:

<div id="randomDynamicId">
    <input id="whatIwantToGetTo">
</div>

我知道我可以直接查找该ID,但这是在Websphere门户中,我“应该”能够通过document.getElementById()直接链接到它,但我总是需要获取id先前的div。
(它最终成为具有命名空间的portlet id,因为有时这些portlet可能会被复制,我只想专门针对一个)

我可以做任何事情吗?
提前致谢。

3 个答案:

答案 0 :(得分:1)

根据您的要求,我发布了我之前的评论作为答案,稍微详细一点:如果问题是whatIwantToGetTo不是以名称空间为前缀的,那么您最终会得到多个具有相同ID的元素在页面中,您应该重写JSP以命名所有id属性。无论如何都应该这样做(如果你可以修改HTML,那就是),至少如果portlet有可能在任何页面上出现多次!

然而,当你在WebSphere Portal 7上看时,你很可能已经有了Dojo,你可以像这样利用它的CSS风格的选择器机制:

var inputElement = dojo.query('#randomId > input');

答案 1 :(得分:0)

你想要的是

document.getElementById ('whatIwantToGetTo').parentNode

答案 2 :(得分:0)

如果你可以使用jQuery,你可以这样做:

var parent = $('#whatIwantToGetTo').parent();

See Here

纯javascript替代方案是这样的: 警报(的document.getElementById( 'objectIWant')parentNode.id。);

See here