首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用按钮在html中显示js对象?

如何使用按钮在html中显示js对象?
EN

Stack Overflow用户
提问于 2021-01-21 16:10:13
回答 2查看 43关注 0票数 1

我现在正试着用html显示我的对象和方法。我的目标是有2个按钮在html (信息vacc1,信息vacc2,打印我的对象的信息。我的目标是在我的按钮下面输出它

下面是我的js代码:

代码语言:javascript
运行
复制
function myVaccines(companyName, vaccName, Type, numberOfShots, doesNotContain){
    this.companyName = companyName;
    this.vaccName = vaccName;
    this.Type = Type;
    this.numberOfShots = numberOfShots;
    this.doesNotContain = doesNotContain;
}

var vacc1 = Vacc("Pfizer-BioNTech","BNT162b2","mRNA","2 shots, 21 days apart","Eggs, Preservatives, Latex");
var vacc2 = Vacc("Moderna","mRNA-1273","mRNA","2shots, 28 days apart","Eggs, Preservatives, Latex",)

这里是我的html:(还不知道在这里放些什么)

代码语言:javascript
运行
复制
<button onclick="myVaccines(vacc1)">
        Information Vaccine 1
</button>
    <p>Output1?</p>
    
<button onclick="myVaccines(vacc2)">
        Information Vaccine 2
</button>
    <p>Output2?</p>
EN

Stack Overflow用户

发布于 2021-01-21 16:35:59

您可以稍微修改一下代码,使var vacc1var vacc2成为用作输入的数组,并在调用打印内容的函数时使用splat运算符

代码语言:javascript
运行
复制
function myVaccines(companyName, vaccName, Type, numberOfShots, doesNotContain){
    let args=arguments;
    printout(event,...args)
}

const printout=function(e,args){
    e.target.nextElementSibling.textContent=args.join(',')
}

var vacc1 = ["Pfizer-BioNTech","BNT162b2","mRNA","2 shots, 21 days apart","Eggs, Preservatives, Latex"];
var vacc2 = ["Moderna","mRNA-1273","mRNA","2shots, 28 days apart","Eggs, Preservatives, Latex"];
代码语言:javascript
运行
复制
<button onclick="myVaccines(vacc1)">Information Vaccine 1</button>
<p></p>
    
<button onclick="myVaccines(vacc2)">Information Vaccine 2</button>
<p></p>

一个稍有不同的版本,使用Object literal作为输入,因此每个打印项目都分配了一个键(可能是从原始代码中)

代码语言:javascript
运行
复制
function myVaccines(companyName, vaccName, Type, numberOfShots, doesNotContain){
    let args=arguments;
    printout(event,...args)
}

const printout=function(e,args){
    e.target.nextElementSibling.textContent=Object.keys(args).map(key=>{
        return [key,args[key]].join(':')
    }).join( ', ' )
}

var vacc1={
    companyName:'Pfizer-BioNTech',
    vaccName:'BNT162b2',
    Type:'mRNA',
    numberOfShots:'2 shots, 21 days apart',
    doesNotContain:'Eggs, Preservatives, Latex'
}
var vacc2={
    companyName:'Moderna',
    vaccName:'mRNA-1273',
    Type:'mRNA',
    numberOfShots:'2shots, 28 days apart',
    doesNotContain:'Eggs, Preservatives, Latex'
}
代码语言:javascript
运行
复制
<button onclick="myVaccines(vacc1)">Information Vaccine 1</button>
<p></p>
    
<button onclick="myVaccines(vacc2)">Information Vaccine 2</button>
<p></p>

票数 0
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65823324

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档