如何使用 Javascript 访问子元素?

发布于 2024-10-10 01:25:57 字数 659 浏览 3 评论 0原文

我正在根据用户操作动态创建表单。每个实例都有一个输入框和两个“按钮”。每个实例都将包装在一个唯一的 div 标签中。

我尝试做但没有成功的是,当我动态创建“按钮”时,我附加一个函数,该函数的输入变量包含其实例的 div 。这是一个简短的摘录:

  var newDivClass = document.getElementById("instance"+1);
  button1.innerHTML = "<a href=\"#\" onclick=\"buttons("+newDivClass+");\" id=\"button1\"> Button1 </a>";

  function buttons(selected) {
        //I want this to select the first instance 
        //of button1 found within div newDivClass
        selected.getElementById("button1");
        //I also tried
        //this.getElementById("button1");
        //selected.getChildren[0]; 
  }

问题似乎在于将 newDivClass 传递给实际函数。

I am dynamically creating forms dynamically according to a users actions. It is an entry-box and a two "buttons" for each instance. Each instance will be wrapped in a unique div tag.

What I tried to do without success is when I dynamically create the "button" I attach a function with the input variable containing the div of its instance. This a brief excerpt:

  var newDivClass = document.getElementById("instance"+1);
  button1.innerHTML = "<a href=\"#\" onclick=\"buttons("+newDivClass+");\" id=\"button1\"> Button1 </a>";

  function buttons(selected) {
        //I want this to select the first instance 
        //of button1 found within div newDivClass
        selected.getElementById("button1");
        //I also tried
        //this.getElementById("button1");
        //selected.getChildren[0]; 
  }

The problem appears to be in passing newDivClass to the the actual function.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

遥远的她 2024-10-17 01:25:57

如果您的目的是将对象的名称作为字符串传递,而不是对对象本身的引用,那么您需要在 newDivClass 变量周围加上引号:

button1.innerHTML = "<a href=\"#\" onclick=\"buttons('"+newDivClass+"');\" id=\"button1\"> Button1 </a>";

否则,按钮函数中的脚本将尝试在位于 dom 顶层的 id 为“instance*n*”的对象。

If your intent is to pass the name of the object as a string and not a reference to the object itself, then you would need to have enclosing quotes around the newDivClass variable:

button1.innerHTML = "<a href=\"#\" onclick=\"buttons('"+newDivClass+"');\" id=\"button1\"> Button1 </a>";

Otherwise the script in your buttons function will be attempting to operate on an object with the id "instance*n*" at the top level of the dom.

热风软妹 2024-10-17 01:25:57

要获取第一个子级,您可以使用 firstChild 属性。

To get the first child, you can use the firstChild property.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文