首页 > 解决方案 > 无法从段落中的脚本中获取值(

)

问题描述

<p><input type="text" name="adcode" id="cityName" 
         style="border:none;color:green;"/></p>
        <script>
          window.onload = function() {
              document.getElementById('cityName').value = GetDivElement();
            }  
        </script>

上面的代码,我无法在段落中调用“GetDivElement”

<p id="cityName"></p>

如何在 p id 中传递 GetElementId?

标签: javascript

解决方案


如果你想获取GetDivElement()方法的返回值到段落,你可以像下面这样:

window.onload = function() {
  let getDivElement = () => {
    return 'Div element data';
  };
  
  let inputbox = document.getElementById('cityInput');
  let cityParagraph = document.getElementById('cityValue');
  
  inputbox.value = cityParagraph.innerHTML = getDivElement();

}  
<div>
    <input id="cityInput" />
    <p id="cityValue"></p>
</div>

正如我从您后来的评论中了解到的那样,如果您想id='coimbatore'GetDivElement()方法中获得段落值,您可以执行以下操作:

window.onload = function() {
  let getDivElement = () => {
    return 'coimbatore';
  };
  
  let paraId = getDivElement();
  let textboxId = `${paraId}CityInput`;
  
  let inputbox = document.getElementById(textboxId);
  let cityParagraph = document.getElementById(paraId);
  
  console.log(`Text field value is : ${inputbox.value}`);
  console.log(`Paragraph value is : ${cityParagraph.innerHTML}`);

}
<div>
    <input id="delhiCityInput" value="delhi input"/>
    <p id="delhi">
      Delhi city data
    </p>
</div>
<div>
    <input id="mumbaiCityInput" value="mumbai input"/>
    <p id="mumbai">
      Mumbai city data
    </p>
</div>
<div>
    <input id="coimbatoreCityInput" value="coimbatore input"/>
    <p id="coimbatore">
      Coimbatore city data
    </p>
</div>

您需要了解的几件事是,

  1. 您不能为多个 html 元素设置相同的 id
  2. 如果您想从段落中获取值,您应该使用innerHTML

希望这可以帮助。


推荐阅读