我正在做一个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;
我显示时有几个错误。 IIS找不到页面,等等。
这是可能的吗?或者我必须调用Controller,Action Method并使用Boostrap ShowModal打开它?
由于
答案 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。