Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 当循环运行时,如何强制Jquery/JS替换变量? 美元邮政({ url:“/cars.php”, 数据类型:“JSON”, 成功:功能(汽车){ var fromidcount=Object.keys(cars).length; 对于(var i=0;i_Javascript_Jquery - Fatal编程技术网

Javascript 当循环运行时,如何强制Jquery/JS替换变量? 美元邮政({ url:“/cars.php”, 数据类型:“JSON”, 成功:功能(汽车){ var fromidcount=Object.keys(cars).length; 对于(var i=0;i

Javascript 当循环运行时,如何强制Jquery/JS替换变量? 美元邮政({ url:“/cars.php”, 数据类型:“JSON”, 成功:功能(汽车){ var fromidcount=Object.keys(cars).length; 对于(var i=0;i,javascript,jquery,Javascript,Jquery,您必须使用$(this).attr(“id”)获取Carname $.post({ url:“/cars.php”, 数据类型:“JSON”, 成功:功能(汽车){ var fromidcount=Object.keys(cars).length; 对于(var i=0;i您在这里遇到了JavaScript的闭包/词法范围规则。您需要有另一个函数来关闭carname变量,在该变量中添加事件处理程序,但是从ID中读取汽车名称可能更容易,因为您有: <html> <header&

您必须使用
$(this).attr(“id”)
获取Carname

$.post({
url:“/cars.php”,
数据类型:“JSON”,
成功:功能(汽车){
var fromidcount=Object.keys(cars).length;

对于(var i=0;i您在这里遇到了JavaScript的闭包/词法范围规则。您需要有另一个函数来关闭
carname
变量,在该变量中添加事件处理程序,但是从ID中读取汽车名称可能更容易,因为您有:

<html>
<header><script src = "/jquery.js"></script></header>
<div id="cars"></div>

<script>
    $.post({
        url:"/cars.php",
        dataType:"JSON",
        success:function(cars){
                var fromidcount = Object.keys(cars).length;
                for (var i=0;i<=(fromidcount-1);i++){
                    var carname= Object.keys(cars)[i];
                    $("#cars").append("<input type='button' id='"+carname+"'>");
                    $("#"+carname).click(function(){
                        alert("selected "+carname);
                    });
                }
        }
    });
</script>
</html>

如果您需要将ID用于其他用途,还可以将车名添加为
数据-
属性。

您可以在函数中定义单击的处理程序

newuserservice().getUsers().then(users=>{
users.forEach(user=>{
const inputElement=document.createElement('input');
inputElement.value=user.name;
inputElement.type='按钮';
inputElement.addEventListener('click',()=>alert(user.name));
document.body.appendChild(inputElement);
});
});
函数userService(){
常量用户=[{
“id”:1,
“姓名”:“Leanne Graham”,
“用户名”:“Bret”,
“电子邮件”:Sincere@april.biz",
“地址”:{
“街道”:“Kulas灯”,
“套房”:“556号公寓”,
“城市”:“格温伯勒”,
“zipcode”:“92998-3874”,
“geo”:{
“lat”:“-37.3159”,
“液化天然气”:“81.1496”
}
},
“电话”:“1-770-736-8031 x56442”,
“网站”:“hildegard.org”,
“公司”:{
“姓名”:“Romaguera Crona”,
“口号”:“多层客户机-服务器神经网络”,
“bs”:“利用实时电子市场”
}
},
{
“id”:2,
“姓名”:“埃尔文·豪厄尔”,
“用户名”:“Antonette”,
“电子邮件”:Shanna@melissa.tv",
“地址”:{
“街道”:“维克多平原”,
“套房”:“879套房”,
“城市”:“Wisokyburgh”,
“zipcode”:“90566-7771”,
“geo”:{
“lat”:“-43.9509”,
“液化天然气”:“-34.4618”
}
},
“电话”:“010-692-6593 x09125”,
“网站”:“anastasia.net”,
“公司”:{
“名称”:“Deckow Crist”,
“流行语”:“积极的说教偶然性”,
“bs”:“协同可扩展的供应链”
}
},
{
“id”:3,
“姓名”:“克莱门汀·鲍奇”,
“用户名”:“Samantha”,
“电子邮件”:Nathan@yesenia.net",
“地址”:{
“街道”:“道格拉斯延伸线”,
“套房”:“847套房”,
“城市”:“麦肯锡黑文”,
“zipcode”:“5959590-4157”,
“geo”:{
“lat”:“-68.6102”,
“液化天然气”:“-47.0653”
}
},
“电话”:“1-463-123-4447”,
“网站”:“ramiro.info”,
“公司”:{
“姓名”:“Romaguera Jacobson”,
“口号”:“面对面分岔界面”,
“bs”:“电子化战略应用”
}
},
{
“id”:4,
“姓名”:“Patricia Lebsack”,
“用户名”:“Karianne”,
“电子邮件”:“朱丽安。OConner@kory.org",
“地址”:{
“街道”:“霍格购物中心”,
“套房”:“692号公寓”,
“城市”:“南猫王”,
“zipcode”:“53919-4257”,
“geo”:{
“lat”:“29.4572”,
“液化天然气”:“-164.2990”
}
},
“电话”:“493-170-9623 x156”,
“网站”:“kale.biz”,
“公司”:{
“姓名”:“罗贝尔·科克雷”,
“口号”:“多层零容忍生产力”,
“bs”:“过渡尖端web服务”
}
},
{
“id”:5,
“姓名”:“Chelsey Dietrich”,
“用户名”:“Kamren”,
“电子邮件”:“卢西奥”_Hettinger@annie.ca",
“地址”:{
“街道”:“斯基尔斯步行街”,
“套房”:“351套房”,
“城市”:“罗斯科维尤”,
“zipcode”:“33263”,
“geo”:{
“lat”:“-31.8129”,
“液化天然气”:“62.5342”
}
},
“电话”:(254)954-1289,
“网站”:“demarco.info”,
“公司”:{
“名称”:“Keebler LLC”,
“口号”:“以用户为中心的容错解决方案”,
“bs”:“彻底改变端到端系统”
}
},
{
“id”:6,
“姓名”:“Dennis Schulist夫人”,
“用户名”:“Leopoldo_Corkery”,
“电子邮件”:“Karley”_Dach@jasper.info",
“地址”:{
“街道”:“诺伯托十字路口”,
“套房”:“950号公寓”,
“城市”:“南克里斯蒂”,
“zipcode”:“23505-1337”,
“geo”:{
“lat”:“-71.4197”,
“液化天然气”:“71.7478”
}
},
“电话”:“1-477-935-8478 x6430”,
“网站”:“ola.org”,
“公司”:{
“姓名”:“康斯丁·洛克曼”,
“口号”:“同步底线界面”,
“bs”:“电子化创新应用”
}
},
{
“id”:7,
“名称”:“Kurtis Weissnat”,
“用户名”:“Elwyn.Skiles”,
“电子邮件”:“电视”。Hoeger@billy.biz",
“地址”:{
“街道”:“雷克斯小径”,
“套房”:“280套房”,
“城市”:“Howemouth”,
“zipcode”:“58804-1099”,
“geo”:{
“lat”:“24.8918”,
“液化天然气”:“21.8984”
}
},
“电话”:“210.067.6132”,
“网站”:“elvis.io”,
“公司”:{
“名称”:“约翰集团”,
“口号”:“可配置多媒体任务组”,
“bs”:“生成企业电子零售商”
}
},
{
“id”:8,
“姓名”:“尼古拉斯·鲁诺夫斯多蒂五世”,
“用户名”:“Maxime_Nienow”,
“电子邮件”:Sherwood@rosamond.me",
“地址”:{
“街道”:“埃尔斯沃思峰会”,
“套房”:“套房729”,
“城市”:“Aliyaview”,
“zipcode”:“45169”,
“geo”:{
“lat”:“-14.3990”,
“液化天然气”:“-120.7677”
}
},
$("#"+carname).click(function(){
  alert("selected " + this.id);
});