在JavaScript中通过单击更改按钮文本
我在JSP页面中使用以下代码。这是我在JavaScript中通过单击按钮来更改按钮文本的函数在JavaScript中通过单击更改按钮文本,javascript,html,jsp,Javascript,Html,Jsp,我在JSP页面中使用以下代码。这是我在JavaScript中通过单击按钮来更改按钮文本的函数 <script> function click(){ var el=document.getElementById(btnaccept); if(el.value=="Accept"){ el.value==="Accepted"; }else{ el.value==="Accep
<script>
function click(){
var el=document.getElementById(btnaccept);
if(el.value=="Accept"){
el.value==="Accepted";
}else{
el.value==="Accept";
}
}
</script>
函数单击(){
var el=document.getElementById(btnaccept);
如果(el.value==“接受”){
el.值==“已接受”;
}否则{
el.value==“接受”;
}
}
这是我的按钮
<button type="button" class="btn btn-default btn-sm" id="btnaccept" onclick="click()">
<span class="glyphicon glyphicon-ok" aria-hidden="true" name="accept"></span> Accept
</button>
接受
当我单击“接受”按钮时,此代码不起作用。我在这里犯了什么错误?正如马特所说,赋值时需要使用赋值运算符
=
,而不是等式运算符==
。另外,当使用getElementById
时,它需要一个字符串,因此您需要使用getElementById(“btnacept”)代码>
同样,要设置按钮元素的文本,我相信您需要使用el.innerText=“Accept”代码>一些事情:
- 不要为你的功能命名
单击不起作用的
- 您没有在按钮上使用值,而是在使用内部HTML
- 如果要操纵该值,请使用;如果要以另一种方式操纵INEERTML,请使用
document.getElementById
将字符串作为参数,因此您希望在那里编写document.getElementById('btnacept')代码>
- 使用
=
分配值=
是比较(相等值或类型)
当函数名使用任何其他名称时,首先应使用单击。
它会把它当作老鼠事件
=
用于比较以分配值使用=
这里我使用了clickbutton()
而不是click()
作为函数名
HTML
<button type="button" class="btn btn-default btn-sm" id="btnaccept" onclick="clickbutton()">
试试这段代码
<script>
function click1() {
var el = document.getElementById('btnaccept');
//alert(el.innerHTML);
if (el.textContent == "Accept") {
el.textContent = "Accepted";
} else {
el.textContent = "Accept";
}
}
</script>
函数click1(){
var el=document.getElementById('btnacept');
//警报(el.innerHTML);
如果(el.textContent==“接受”){
el.textContent=“已接受”;
}否则{
el.textContent=“接受”;
}
}
将onclick事件更改为click1()
我通过以下方式实现了colapsible面板的切换按钮:
<button type="button" class="btn btn-default" onclick="changeIcon(this)">
<span class="glyphicon glyphicon-triangle-bottom"></span>
</button>
<script>
function changeIcon(button) {
if(button.firstElementChild.getAttribute("class") == "glyphicon glyphicon-triangle-bottom")
{
button.firstElementChild.setAttribute("class", "glyphicon glyphicon-triangle-top");
}
else
{
button.firstElementChild.setAttribute("class", "glyphicon glyphicon-triangle-bottom");
}
}
</script>
功能更改图标(按钮){
if(button.firstElementChild.getAttribute(“类”)=“glyphicon glyphicon三角形底部”)
{
button.firstElementChild.setAttribute(“类”,“字形图标”“字形图标三角形顶部”);
}
其他的
{
button.firstElementChild.setAttribute(“类”,“字形图标”“字形图标三角形底部”);
}
}
==
进行比较。您想要分配一个新值的=
。var el=document.getElementById(Btnacept)是错误的,我猜否决票是因为您没有使用引号来获取答案中的元素。不要与值比较,相反,textContent或innerhtml u可以使用innerhtml
将在按钮内给出整个内部html:在本例中,它将是Accept
。仅使用textContent
@Rohit,正确,但这将是OP的有用信息