ASP MVC使用ActionLink传递表单数据

时间:2011-01-26 13:56:20

标签: asp.net asp.net-mvc ajax

我希望能够将页面上的文本框中的数据传递给使用ActionLink的tan Action。

我在视图中指定了actionLink,如下所示

@Ajax.ActionLink(
    "UTC",
    "GetTime",
    { zone="BST" },
    new AjaxOptions {
        InsertionMode = InsertionMode.Replace,
        UpdateTargetId = "TargetElementID",
        OnBegin = "GetTime_OnBegin",
    }
)

由于我无法在帮助程序中看到任何方法来指定它,我想实现OnBegin事件并在那里执行。我注意到OnBegin收到XMLHttpRequest,其中包含将要执行的请求的详细信息和一个目标,它的目的是逃避我,但包含url属性object.url以及object.context.url,所以我想添加属性我需要将我的操作传递给url,认为它将解析为该操作的同名参数。

function GetTime_OnBegin(XMLHttpRequest, object) {
    object.context.url = object.context.url + "&text=" + $('TextBoxId').val();
}

我的控制器操作

public string GetTime(string zone, string text) {
        DateTime time = DateTime.UtcNow;
        return string.Format(
            "{0:h:mm:ss tt}({1},{2})",
            time, zone.ToUpper(),text);
}

但是文本没有传递,并且始终为null。

有更优雅的方法吗?

0 个答案:

没有答案