Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/91.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中通过单击更改按钮文本_Javascript_Html_Jsp - Fatal编程技术网

在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

我在JSP页面中使用以下代码。这是我在JavaScript中通过单击按钮来更改按钮文本的函数

    <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的有用信息