javascript - MVC Javascript 按钮值不正确

标签 javascript

我正在使用 MVC - 在我的一个 View 中,我有一个按钮,我想在单击时切换值。这是 View 中的按钮代码:

<div class="col-md-10">
     <input type="button" value="Yes" class="btn btn-default" id="CanOrder" />
</div>

这是我的点击事件的 JavaScript:

<script>
    $('#CanOrder').click(function () {
        if ($(this).val('Yes')) {
            alert("button says Yes");
            $(this).val('No');
        }
        else {
            alert("button says No");
            $(this).val('Yes');
        }
    });
</script>

一开始,这是有效的......按钮显示"is",当我单击它时,我收到警报“按钮说是”,然后它更改为“否”。

但在那之后,每当我点击它时,它会立即将按钮上的文本更改为"is",然后我收到警报说“按钮说是”,然后它又变回“否”。

如果我尝试在没有警报的情况下运行该页面,我什至看不到它变回"is" - 它的行为就像第一次单击它一样有效,然后每当我单击它时它只会说“否”在那之后。

我做错了什么?

谢谢!

最佳答案

为了检查 CanOrder 的值,您需要更正 if 语句:

<script>
    $('#CanOrder').click(function () {
        if ($(this).val() === "Yes") {
            alert("button says Yes");
            $(this).val('No');
        }
        else {
            alert("button says No");
            $(this).val('Yes');
        }
    });
</script>

您可以了解有关 val 方法的更多信息 here .

关于javascript - MVC Javascript 按钮值不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41212457/

相关文章:

javascript - 为什么输出给出 'undefined' 而不是 JS 示例中的 'number'?

javascript - 如何合并数组中的重复对象值然后输出列表?

javascript - 如何验证 mxgraph 中单元格的未连接边

javascript - 如何更改 D3.js 中路径的颜色?

javascript - 如何在测试中手动设置变量的值( Jest )?

javascript - Flash/AS3 Google Maps API(弃用?)

javascript - 使用正则表达式查找 Javascript 中两个字符串之间的差异

javascript - 输入文本时调整输入文本字段的大小

javascript - JQuery:将 div 附加为 var 类

javascript - 从 JSON 到 Servlet 数据