gpt4 book ai didi

javascript - 在js中使用传递的val

转载 作者:行者123 更新时间:2023-12-03 04:51:44 25 4
gpt4 key购买 nike

我需要从html传递一个值并使用它在我的Js中查找var,因此根据我的html上的theId中的值我可以在我的js中使用var。我怎样才能做到这一点?

HTML

 <input id="Waist" type="checkbox" onchange="getToWork(this.id)" >Waist 

<强> <script> HTML 上的标签

function  getToWork(theId){
usedCheckBox(theId);
}

myJs.js

  function usedCheckBox(theId){

var temp1 = theId.name; - will be undefined
var temp2 = Waist.name; - will work
}

var Waist = {name:"bob",age:"17"}

最佳答案

您的代码的问题是,您没有使用 document.getElementById ,如下所示:

JS:

document.getElementById("Waist").addEventListener("change",function(evt){
getToWork(this.id);
})

function getToWork(theId){
usedCheckBox(theId);
}

function usedCheckBox(theId){
console.log(theId);
console.log(Waist);
var temp1 = document.getElementById("Waist").val; // will return Waist
var temp2 = Waist.val(); // generate error, don't know what you want
}

var Waist = "change today!"

fiddle : https://jsfiddle.net/xLvzah8w/1/

我现在明白了你的问题,为此你应该创建一个父对象,如下所示:

function usedCheckBox(theId){
var temp1 = parent[theId].name; // will return bob
console.log(temp1);
var temp2 = parent.Waist.name; // will return bob
console.log(temp2);
}

var parent = {
Waist : {name:"bob",age:"17"}
}

您的代码不起作用的原因是您正在尝试访问字符串的属性。 'theId' 是一个值为 'Waist' 的字符串,其中 Waist 是一个对象,因此会发生错误。

更新的 fiddle :https://jsfiddle.net/xLvzah8w/2/

关于javascript - 在js中使用传递的val,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42630200/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com