控制器上的MVC空参数

时间:2018-07-20 16:04:35

标签: javascript ajax model-view-controller datatables

我正在使用Javascript生成的<a>标签在 Controller 上调用 Action (编辑或删除)。我试图传递一个参数('abc123'),但是当它到达控制器时,该参数为 null

我尝试了各种创建<a>标记的方法,但最终总是在控制器上显示空参数。

生成的<a>标签的最终结果:

<a class="popup" href="./SiteAdmin/Edit?=abc123">Edit</a>

<a class="popup" href="./SiteAdmin/Delete/abc123">Delete</a>

HTML:

<div style="width: 90%; margin: 0, auto" class="tableContainer">
    <a class="popup" href="./SiteAdmin/Save/0" style="margin-bottom:20px; margin-top: 20px;">Add New User</a>
    <table id="tblUserAdmin" class="table admin-table">
        <thead>
            <tr>
                <th>USERID</th>
                <th>Name</th>
                <th>role_id</th>
                <th>Role</th>
                <th>Modified By</th>
                <th>Modified Date</th>
                <th>Edit</th>
                <th>Delete</th>
            </tr>
        </thead>
    </table>
</div>   

Javascript:

var oTable = $('#tblUserAdmin').DataTable({
    "ajax": {
        "url": './SiteAdmin/getUsers',
        "type": "GET",
        "datatype": "json"
    },
    "columns": [
        { "data": "userid" },
        { "data": "name" },
        { "data": "role_id" },
        { "data": "role_nm" },
        { "data": "modifiedBy" },
        { "data": "modifiedDT" },
        {
            "data": "userid", "render": function (data) {
                return '<a class="popup" href= "./SiteAdmin/Edit?=' + data + '">Edit</a>';
            }
        },
        {
            "data": "userid",  "render": function (data) {
                return '<a class="popup" href= "./SiteAdmin/Delete/' + data + '">Delete</a>';
            }
        }

控制器:

public class SiteAdminController : Controller
{
    private Customer db = new Customer();

    public ActionResult Index()
    {
        return View("~/Views/SiteAdmin/Index.cshtml");
    }

    [HttpGet]
    public ActionResult Edit(string id)
    {
        // put a break point here to see id was null            
        var usr = new sec_users();
        usr = db.sec_users.Where(a => a.userid == id).FirstOrDefault();

        return View(usr);
    }

}     

0 个答案:

没有答案