为什么下面的按钮切换情况下javascript工作
why isn't the following button switch case javascript working?
我使用以下代码来获取按钮用户单击的值,然后在标签中打印相同的值。我已经在Worklight项目中编写了此代码,当我运行该项目时,我定义的其他功能似乎都不起作用。但是当我把这个函数放在注释中,一切似乎都工作得很好。
我也试过直接把按钮的id直接到开关箱,但这也不起作用。我是新的javascript的概念,无法找到一个解决方案。如果有帮助的话,在javascript下面提供了必要的HTML。
function typecheck(objButton) {
exptype = document.getElementById("exptype");
grocery = document.getElementById("button");
medical = document.getElementById("button2");
education = document.getElementById("button3");
entertainment = document.getElementById("button4");
automobile = document.getElementById("button5");
insurance = document.getElementById("button6");
others = document.getElementById("button7");
switch (objButton)
case "grocery":
exptype.innerHTML = "grocery";
break;
case "medical":
exptype.innerHTML = "medical";
break;
case "education":
exptype.innerHTML = "education";
break;
case "entertainment":
exptype.innerHTML = "entertainment";
break;
case "automobile":
exptype.innerHTML = "automobile";
break;
case "insurance":
exptype.innerHTML = "insurance";
break;
default:
exptype.innerHTML = "others";
break;
}
html代码:
<div data-role="collapsible" id="collapsible2">
<h3>Category</h3>
<div data-role="controlgroup" id="controlgroup1">
<a href="#" data-role="button" id="button" onclick="typecheck(this)">Grocery</a>
<a href="#" data-role="button" id="button2" onclick="typecheck(this)">Medical</a>
<a href="#" data-role="button" id="button3" onclick="typecheck(this)">Education</a>
<a href="#" data-role="button" id="button4" onclick="typecheck(this)">Entertainment</a>
<a href="#" data-role="button" id="button5" onclick="typecheck(this)">Automobile</a>
<a href="#" data-role="button" id="button6" onclick="typecheck(this)">Insurance</a>
<a href="#" data-role="button" id="button7" onclick="typecheck(this)">Others</a>
</div>
<label id="exptype">Label:</label>
试试这个(记住大小写敏感):
function typecheck(objButton)
{
switch(objButton.innerHTML){
case "Grocery": exptype.innerHTML= "grocery";
break;
case "Medical": exptype.innerHTML= "medical";
break;
case "Education": exptype.innerHTML= "education";
break;
case "Entertainment": exptype.innerHTML= "entertainment";
break;
case "Automobile": exptype.innerHTML= "automobile";
break;
case "Insurance": exptype.innerHTML= "insurance";
break;
default: exptype.innerHTML= "others";
break;
}
}
我认为你的问题在于你在typecheck(this)
中传递了this
。您的切换案例是根据DOM对象检查字符串。取而代之的是这个。typecheck(this.innerHTML)
您有几个问题,但具体来说,您需要测试的文本,无论是innerHTML或innerText,而不是对象。此外,Javascript是区分大小写的。这个小提琴为我工作:http://jsfiddle.net/5VJ2H/
function typecheck(objButton) {
exptype = document.getElementById("exptype");
grocery = document.getElementById("button");
medical = document.getElementById("button2");
education = document.getElementById("button3");
entertainment = document.getElementById("button4");
automobile = document.getElementById("button5");
insurance = document.getElementById("button6");
others = document.getElementById("button7");
switch (objButton.innerHTML.toLowerCase()){
case "grocery":
exptype.innerHTML = "grocery";
break;
case "medical":
exptype.innerHTML = "medical";
break;
case "education":
exptype.innerHTML = "education";
break;
case "entertainment":
exptype.innerHTML = "entertainment";
break;
case "automobile":
exptype.innerHTML = "automobile";
break;
case "insurance":
exptype.innerHTML = "insurance";
break;
default:
exptype.innerHTML = "others";
break;
}
}
相关文章:
- JavaScript-在手机上不工作的情况下,在外部单击时隐藏元素
- 在不设置协议的情况下,使用javascript/jquery更改iframe-src
- 如何在不单击javascript中的按钮的情况下触发事件
- 图像可以从源<img src=""/>.TEXT可以在没有javascript的情况下从外部
- 无法't在不使用Javascript刷新页面的情况下多次将值传递给文本框
- 有没有一种方法可以在没有文档或jQuery的情况下使用javascript解码html实体
- 如何在没有ajax的情况下将javascript动态数据发送到php变量
- 如何使用JavaScript在没有html dom的情况下隐藏html元素
- 如何在不知道关键字的情况下访问javascript对象值
- 为什么在这种情况下,“This”确实充当javascript函数中的私有成员
- 如何在不保存到其他变量的情况下更改JavaScript中的值
- 在不使用PHP的情况下将表单输入值获取到Javascript中
- 如何在不预定义的情况下将javascript函数传递到另一个函数中
- 在给定 javascript 中的表头的情况下生成 TSV 文件
- 如何在不退出javascript的情况下从javascript更新网页
- 我可以在不使用乘法运算符“”的情况下进行乘法运算吗*"在JavaScript中
- 在不使用循环的情况下,从一个数据库字符串值向javascript数组添加多个对象
- Haxe Javascript:在不使用Reflect的情况下按名称获取和设置属性
- 在不使用javascript的情况下,可以在表单字段中设置文本占位符(以提示最终用户插入特定格式)
- 为什么下面的按钮切换情况下javascript工作