gpt4 book ai didi

javascript - 如何在回发窗口中显示 ViewData 的内容?

转载 作者:行者123 更新时间:2023-11-30 06:49:30 26 4
gpt4 key购买 nike

我想在模式窗口上显示 ViewData 的内容,在我的例子中它包含字符串。为此,我在我看来使用了以下代码。

<h2><%= Html.Encode(ViewData["Message"]) %></h2>
<p>
To learn more about ASP.NET MVC visit <a href="http://asp.net/mvc" title="ASP.NET MVC Website">http://asp.net/mvc</a>.
</p>
<form runat = "server">
<div onload = "poponload('<%=ViewData["sample"].ToString()%>')">
<input type="submit" value="show" id="submitBtn"/>
</div>
<script type="text/javascript" language="Javascript">
function poponload(msg) {
alert(msg.toString().length);
if (msg.toString().length > 0) {
my_window = window.open("",
"mywindow1", "status=1,width=350,height=150");
my_window.document.write(msg.toString());
}
}
</script>
</form>

Controller 包含如下简单的操作方法。

public ActionResult Index()
{
ViewData["Message"] = "Welcome to ASP.NET MVC!";
return View();
}

[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Index(FormCollection collection)
{
ViewData["Message"] = "Welcome to ASP.NET MVC!";
ViewData["sample"] = "My name is kaps";
return View();
}

我想使用 Window.open() 显示 ViewData["sample"] 的内容。但是这段代码无法向我显示所需的输出。谁能告诉我如何实现它?

谢谢。

最佳答案

我建议使用 javascript 库,例如 JQuery。有许多模态弹出插件可以使这类事情变得非常简单。

我最喜欢的一个是 Simple Modal埃里克·马丁。下面是如何使用它来显示 ViewData 的示例。

<script type="text/javascript" language="Javascript">
$(document).ready(function() {
$("#sample").modal();
});
</script>
<div id="sample"><%=ViewData["key"]%></div>

编辑:

要使用 window.open 见下文。但是,这不是模态弹出窗口,因为它存在于新的浏览器窗口中。这可能会被弹出窗口拦截器拦截,所以我不会这样做。

<script type="text/javascript" language="Javascript">
$(document).ready(function() {
var url = "<%= ViewData["key"].ToString() %>";
window.open(url, "DescriptiveWindowName",
"resizable=yes,scrollbars=yes,status=yes");
});
</script>

来自mozilla developer page

How can I tell when my window was blocked by a popup blocker? With the built-in popup blockers of Mozilla/Firefox and Internet Explorer 6 SP2, you have to check the return value of window.open(): it will be null if the window wasn't allowed to open. However, for most other popup blockers, there is no reliable way.

希望这对您有所帮助。

关于javascript - 如何在回发窗口中显示 ViewData 的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2316867/

26 4 0