试图通过onclick function()括号传递不同的变量

Trying to pass different variables through onclick function () brackets

本文关键字:变量 onclick function      更新时间:2023-09-26

我试图通过一个函数传递几个不同的情况

<div id="button1" class="button" onclick="pop(case1)">popup a</div>

然后在函数

中创建不同的大小写
function pop(a){
    if (a='case1') {var mytext = "you pressed the popup case1"; var myclass=a;}
    else if (a='case2'){var mytext = "you pressed the popup case2"; var myclass=a;}
    else if (a='case3'){var mytext = "you pressed the popup case3"; var myclass=a;}
var p1 = document.createElement("div");
    p1.classname =myclass;
    p1.innerHTML=mytext;
    document.body.appendChild(p1);
}
这是我为它做的小提琴http://jsfiddle.net/alexnode/WqsNJ/1/我应该如何正确地创建条件if else ?目前,我总是得到cas1弹出。

问题是您正在分配=而不是检查==,将您的= 's更改为== 's。

http://jsfiddle.net/WqsNJ/2/

if (a=='case1') {var mytext = "you pressed the popup case1"; var myclass=a;}
else if (a=='case2'){var mytext = "you pressed the popup case2"; var myclass=a;}
else if (a=='case3'){var mytext = "you pressed the popup case3"; var myclass=a;}

为了在JavaScript中比较字符串,您需要使用is 等于运算符(==)而不是等号(=)

所以正确的代码应该是
function pop(a){
    if (a=='case1') {var mytext = "you pressed the popup case1"; var myclass=a;}
    else if (a=='case2'){var mytext = "you pressed the popup case2"; var myclass=a;}
    else if (a=='case3'){var mytext = "you pressed the popup case3"; var myclass=a;}
var p1 = document.createElement("div");
    p1.classname =myclass;
    p1.innerHTML=mytext;
    document.body.appendChild(p1);
}