【问题标题】:How to prevent href from redirecting to exterior page.如何防止 href 重定向到外部页面。
【发布时间】:2016-12-08 21:21:02
【问题描述】:

我有一个 Index.Html 文件,我想在引导模式中打开它而不退出模式本身。本质上充当内部链接。我正在尝试使用 ASP.net mvc 来做到这一点。该位置是从 Captivate 9 生成的,我正在尝试将单张幻灯片作为示例添加到模态中

Javascript:

var modal3 = document.getElementById('myModal3');
var img3 = document.getElementById('myImg3');
var modalImg3 = document.getElementById("img03");
img3.onclick = function () {
    modal3.style.display = "block";

}

var span = document.getElementsByClassName("close")[2];
span.onclick = function () {
    modal3.style.display = "none";
}

模态:

<div id="myModal3" class="modal">
    <span class="close" style="color:white">×</span>
</div>

【问题讨论】:

    标签: javascript jquery html asp.net twitter-bootstrap


    【解决方案1】:

    我写的与此类似的东西是使用 Ajax。我不确定你想走这条路,但至少值得一试!您只需在单击的某个元素上添加一个 btnCreate id,它应该可以工作!

        <!-- modal placeholder-->
    <div id='myModal' class='modal fade in'>
        <div class="modal-dialog">
            <div class="modal-content">
                <div id='myModalContent'></div>
            </div>
        </div>
    </div>
    

    html about 只是您要加载的内容的占位符。

    此脚本只是打开窗口并加载内容。几乎从您的控制器中拦截它。这可以是您要加载到此 Modal 窗口中的 PartialView!

    $(function () {
        $.ajaxSetup({ cache: false });
    
        $("body").on("click", "#btnCreate", function (e) {
            $('#myModalContent').load(this.href, function () {
                $('#myModal').modal({
                    backdrop: 'static',
                    keyboard: true
                }, 'show');
                bindForm(this);
            });
    
            return false;
        });
    });
    

    然后关闭模态窗口。

    function bindForm(dialog) {
         $('form', dialog).submit(function () {
            $.ajax({
                url: this.action,
                type: this.method,
                data: $(this).serialize(),
                success: function (result) {
                    if (result.success) {
                        $('#myModal').modal('hide');
                    } else {
                        $('#myModal').modal('hide');
                    }
                }
            });
            return false;
        });
    }
    

    【讨论】:

    • 您好,谢谢。感谢您的回答,我将尝试解决此问题,但我不知道 ajax 是否可行,因为这是从部分调用的。
    • 只要您将 ActionResult 返回给客户端,初始绑定就应该抓住它并将其插入到模式窗口中。可能需要一些玩弄。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-02-03
    • 2018-01-21
    • 2016-10-20
    • 2014-06-28
    • 2022-01-09
    • 1970-01-01
    • 2021-01-10
    相关资源
    最近更新 更多