首页 > 解决方案 > 我有一个带有这个参数的 onChange 函数可以正常工作,但我也想应用函数 onLoad

问题描述

I have an onchange function that when pending is selected, it will add a value in the input field, but I also want this to apply onload, currently, pending is already selected, so when the page loads, i want to add a value to输入字段。

function validateForm1(k, x) {
  if (x.value == "pending") {
    document.getElementById(k).value = "populate";
  }
}
<input type="text" value="" id="target1">

<select data-uid="target1" onchange="validateForm1(this.getAttribute('data-uid'),this)">
  <option></option>
  <option selected value="pending">pending</option>
  <option value="testing">testing</option>
</select>

标签: javascripthtml

解决方案


调用您的验证函数并填充变量,您可以使用 .js 等 javascript 函数找到它们getElementsByName。这是您拥有的代码最简单的方法,但是,为了改进它,我建议向您添加一个 id select,然后使用getElementById它来获取元素。

这是一个有效的解决方案:

function validateForm1(k, x) {
  if (x.value == "pending") {
    document.getElementById(k).value = "populate";
  }
}
validateForm1(document.getElementsByTagName("select")[0].getAttribute('data-uid'), document.getElementsByTagName("select")[0]);
<input type="text" value="" id="target1">

<select data-uid="target1" onchange="validateForm1(this.getAttribute('data-uid'),this)">
  <option></option>
  <option selected value="pending">pending</option>
  <option value="testing">testing</option>
</select>


推荐阅读