MVC从Javascript操作

时间:2017-01-27 18:55:43

标签: javascript asp.net-mvc showmodaldialog

我正在做一个MVC应用程序。 IT是从ASP.NET迁移的。

在我的_ Layout我有一个Footer,其中会显示一条消息,其中包含显示条款和条件的链接。该链接会打开Htm并提供所有法律建议。

我的意图是Link调用一个打开Htm页面的JavaScript动作。像这样。



 function ShowTerms() {
            document.bgColor = "#E9EAED";
            oReturn = window.showModalDialog('TermsAndConditions.htm', window, 'dialogHeight:680px;dialogWidth=620px;resizable:no;status:no; help:no');
            document.bgColor = "";
        }




我的JavaScript调用是这样的。



<span class="Term" onmouseover="this.style.cursor='pointer'" onclick="javascript:ShowTerms();">Terms y Conditions</span>
&#13;
&#13;
&#13;

我显示时有几个错误。 IIS找不到页面,等等。

这是可能的吗?或者我必须调用Controller,Action Method并使用Boostrap ShowModal打开它?

由于

2 个答案:

答案 0 :(得分:0)

试试这个

<span class="Term" onmouseover="this.style.cursor='pointer'">Terms y Conditions</span>

var ele = document.getElementsByClassName("Term")[0];

ele.addEventListener("click",function() {
        document.bgColor = "#E9EAED";
        oReturn = window.showModalDialog('TermsAndConditions.htm', window, 'dialogHeight:680px;dialogWidth=620px;resizable:no;status:no; help:no');
        document.bgColor = "";
    });

我不知道您使用的浏览器,但现代浏览器中不推荐使用Window.showModalDialog()。你可以阅读它here。您可以使用的另一个选项,您也可以阅读here

答案 1 :(得分:0)

另一个工作示例。

<dialog>
<p>
    <q id="linkId"></q>
</p>
</dialog>

<span class="Term" id="show" onmouseover="this.style.cursor='pointer'">Terms y Conditions</span>



document.getElementById('show').onclick = function(e) {
e.preventDefault();
document.bgColor = "#E9EAED";
var link = document.getElementById('linkId');
link.innerHTML = window.open('http://www.mozilla.org','popup','width=600,height=600'); return false;}; 

你可以尝试here