-1

我正在尝试切换我的 .net mvc 4 应用程序上的按钮。我正在使用 Razor 视图引擎。我希望切换一个按钮并生成交替图像。如果我单击一个按钮,它应该生成一个选中的图像,如果我再次单击,它应该生成一个未选中的图像。从昨天开始,我一直坚持这一点,无法取得任何进展。有人可以指出这段代码中的错误。下面是我的 Index.cshtml 文件 -

@using System.Web.Optimization

<html lang="en">
<head>
    <meta charset="utf-8">
</head>
<body data-spy="scroll" data-target=".bs-docs-sidebar">
    <input type="image" src="/assets/ico/glyphicons_152_check.png" class="img-rounded" id="btn-true" />

    <script type="text/javascript">
        $('#btn-true').bind("click", function () {
            if ($(this).prop("src", "/assets/ico/glyphicons_152_check.png")) {
                $(this).prop("src", "/assets/ico/glyphicons_153_unchecked.png");
            }
            else if ($(this).prop("src", "/assets/ico/glyphicons_153_unchecked.png")) {
                $(this).prop("src", "/assets/ico/glyphicons_152_check.png");
            }
            $(this).toggleClass("on");
        });
    </script>

    <!-- Le javascript
            ================================================== -->
    <!-- Placed at the end of the document so the pages load faster -->
    <script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script>
    @Scripts.Render("~/assets/js/jquery-1.9.1.js")
    @Scripts.Render("~/assets/js/bootstrap-transition.js")
    @Scripts.Render("~/assets/js/bootstrap-alert.js")
    @Scripts.Render("~/assets/js/bootstrap-modal.js")
    @Scripts.Render("~/assets/js/bootstrap-dropdown.js")
    @Scripts.Render("~/assets/js/bootstrap-tooltip.js")
    @Scripts.Render("~/assets/js/bootstrap-popover.js")
    @Scripts.Render("~/assets/js/bootstrap-button.js")
    @Scripts.Render("~/assets/js/bootstrap-typeahead.js")
    @Scripts.Render("~/assets/js/bootstrap-affix.js")
    @Scripts.Render("~/assets/js/holder/holder.js")
    @Scripts.Render("~/assets/js/google-code-prettify/prettify.js")
    @Scripts.Render("~/assets/js/application.js")
</body>
</html>
4

1 回答 1

0

问题在于您的 if 语句。您不是在比较这些值,而是将它们设置到位。你需要这样的东西。

if ($(this).prop("src") === "/assets/ico/glyphicons_152_check.png") {
    $(this).prop("src", "/assets/ico/glyphicons_153_unchecked.png");
}
else if ($(this).prop("src") === "/assets/ico/glyphicons_153_unchecked.png") {
    $(this).prop("src", "/assets/ico/glyphicons_152_check.png");
}
于 2013-07-09T20:48:16.803 回答