使这段代码在asp.net mvc3中工作(目前使用的是php)

时间:2011-12-19 00:06:21

标签: php javascript asp.net asp.net-mvc asp.net-mvc-3

我有点卡在以下代码上:

$(document).ready(function () {
    /* Init DataTables */
    var oTable = $('#example').dataTable();

    /* Apply the jEditable handlers to the table */
    $('td', oTable.fnGetNodes()).editable('../examples_support/editable_ajax.php', {
        "callback": function (sValue, y) {
            var aPos = oTable.fnGetPosition(this);
            oTable.fnUpdate(sValue, aPos[0], aPos[1]);
        },
        "submitdata": function (value, settings) {
            return {
                "row_id": this.parentNode.getAttribute('id'),
                "column": oTable.fnGetPosition(this)[2]
            };
        },
        "height": "14px"
    });
});

注意它引用'../examples_support/editable_ajax.php',该php文件的内容是:

<?php
    echo $_POST['value'].' (server updated)';
?>

我被困在两个方面:

1)如何将editable_ajax.php中的代码转换为asp.net中的等效代码?

2)我需要在asp.net中创建哪个文件来引用,就像引用的php代码一样?我尝试创建一个常规的cs文件,但我不认为这是正确的做法。

1 个答案:

答案 0 :(得分:2)

因为你发布了这是MVC3 ...首先是你的路线(非常特定于这个特定的电话)

routes.MapRoute(
   "Editable Ajax.php", //name
   "/examples_support/editable_ajax.php", //exact match
   new {controller="EditableAjax", action="Index"}
);

然后你需要一个EditableAjaxController.cs:

public ActionResult Index(string value)
{
    return View(new EditableAjaxViewModel(value));
}

EditableAjaxViewModel:

public EditableAjaxViewModel
{
    public string Value{get; set;}
    public EditableAjaxViewModel(string value)
    {
        Value = value;
    }
}

/Views/EditableAjax/Index.cshtml视图:

@model EditableAjaxViewModel
@Model.Value <text> (server updated)</text>