Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.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_Jquery_Html - Fatal编程技术网

尝试在javascript中切换按钮上的文本

尝试在javascript中切换按钮上的文本,javascript,jquery,html,Javascript,Jquery,Html,我有一个html的按钮 <input id="LockUnlock" type="submit" class="btn-sm btn-primary" value="@(agent.IsLockedOut ? "Unlock" : "Lock")"/> 它根据模型正确设置值,但我希望在单击按钮时切换按钮文本 我的Javascript: <script type="text/javascript"> $('

我有一个html的按钮

<input id="LockUnlock"
       type="submit" 
       class="btn-sm btn-primary" 
       value="@(agent.IsLockedOut ? "Unlock" : "Lock")"/>

它根据模型正确设置值,但我希望在单击按钮时切换按钮文本

我的Javascript:

<script type="text/javascript">
        $('input[type = submit]').click(function () {
            if ($(this).text() === "Lock") 
            { 
                $(this).text("Unlock"); 
            } 
            else 
            { 
                $(this).text("Lock"); 
            }
        });
    </script>

$('input[type=submit]')。单击(函数(){
if($(this.text()=“Lock”)
{ 
$(此).text(“解锁”);
} 
其他的
{ 
$(此).text(“锁定”);
}
});
当我点击按钮时,什么也没有发生。我在Chrome的控制台窗口中没有看到错误。

使用
$(this.val()
而不是
$(this.text()

此外,我还修复了您在问题中遇到的一些代码错误

$('input[type=submit]')。单击(函数(){
if($(this.val()=“Lock”)
{ 
$(此).val(“解锁”);
} 
其他的
{ 
$(此).val(“锁定”);
}; 
});


您可以使用
$(this).val()
而不是
$(this).text()
编写此

即使我发出警告(“foo”);在函数中,它从不显示。我想我做错了什么,以至于这个方法从未被调用。页面上的
脚本在哪里?在
中?您可能需要将JS代码包装在
ready
来自else的最后一个
{$(this).text(“Lock”);}阅读OP对问题的评论。