繁体   English   中英

将javascript转换为asp.net MVC模型

[英]var javascript to asp.net MVC model

MVC的新增功能,尝试使用FSCommand(与其他功能配合使用)从Flash将变量从一个视图传递到另一个视图。 我正在使用的Javascript:

function p1_DoFSCommand(command, args) {
            var p1Obj = InternetExplorer ? p1 : document.p1;
            if (command == "nameClip") {
                var  FlashName = [args];
            }

在Homecontroller中:

 public ActionResult Testing(string FlashName)
        {

            ViewData["Message"] = FlashName;

            return View();

        }

在第二个视图中:

Html.Encode(ViewData["message"])

感谢您的协助。

这应该将数据获取到Action方法:

function p1_DoFSCommand(command, args) {
                var p1Obj = InternetExplorer ? p1 : document.p1;
                if (command == "nameClip") {
                    var  FlashName = [args];

                    // might have to replace '?' with '&'
                    var formData = "?FlashName=" + FlashName; 

                    $.post('/HomeController/Testing', formData, function(res)
                    {
                        // do stuff with response

                    }, "json");
    }

您还需要引用jQuery才能正常工作。

如果您需要将该值传递给另一个控制器,只需更改

$.post('/HomeController/Testing', formData, function(res)

$.post('/OtherController/Testing', formData, function(res)

编辑:
我不确定您要做什么,但是ViewData是仅在Controller和执行View时才有意义的数据构造。 在运行JavaScript时,它处于呈现页面的上下文中,因此ViewData毫无意义。 如果您认为

<input id='MyMessage' type='hidden' value='<%=(string)ViewData['Message'] %>' />

然后,您可以获得所需的价值

$('#MyMessage').val();

要么

document.getElementById("MyMessage").value;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM