如何在加载时从标签标题添加按钮值

时间:2019-05-13 09:17:00

标签: javascript jquery html

我正在处理我的房地产项目,我有一个联系方式框,我想从标签a中获取标题到方式框中的按钮值中。

我英语不好,如果我在某处说错了,请原谅

我尝试了很多方法,但仍然无法正常工作,我得到的结果是标题,但仅适用于1个ID

  function change() {
        let a_id = document.getElementById('test');
        let btn_id = document.getElementById("btn-test");

        let btn = a_id.getAttributeNode('title').value;
				
        // btn_id.value = btn;

        btn_id.innerHTML = btn_id.value = btn;
  
			}
<body>

    <p>Click the button find out if the button has an onclick attribute specified.</p>
    <a href="#" title="bye" id="test">hello</a>
    <input type="button" onload="change()" title="hello" value="Try it" id="btn-test">
  </body>

这是我的代码https://hastebin.com/ohasiqavun.xml

2 个答案:

答案 0 :(得分:1)

您应该在这里使用类而不是id。 ID是唯一的,因此仅适用于1个元素。

答案 1 :(得分:0)

我刚刚为您创建了以下替代方法,以使您可以分别获取每个按钮的值。注意,我将HTML更改为3个都包含相同内容的容器。我删除了ID并将其更改为类:

JS:

let changeallbuttons = document.querySelector('.changeallbuttons')
  changeallbuttons.addEventListener('click', function() {
   document.querySelectorAll('.container').forEach(item =>{
    let button = item.querySelector('input')
    let a = item.querySelector('.test')

    button.value   = a.getAttribute('title')
   })
  })
 document.querySelectorAll('.container').forEach(item =>{
  item.addEventListener('click', function() {
   let button = item.querySelector('input')
   let a = item.querySelector('.test')

   button.value   = a.getAttribute('title')
  })
 })

HTML:

<div class="container">
    <p>Click the button find out if the button has an onclick attribute specified.</p>
    <a href="#" title="bye1" class="test" >hello</a>
    <input type="button" title="hello" value="Try it">
  </div>
  <div class="container">
    <p>Click the button find out if the button has an onclick attribute specified.</p>
    <a href="#" title="bye2" class="test" >hello</a>
    <input type="button" title="hello" value="Try it">
  </div>
  <div class="container">
    <p>Click the button find out if the button has an onclick attribute specified.</p>
    <a href="#" title="bye3" class="test">hello</a>
    <input type="button" title="hello" value="Try it">
  </div>
  <input class="changeallbuttons" type="button" title="hello" value="Try it">