提交表单后,向表中添加新行-JQuery、Ajax

提交表单后,向表中添加新行-JQuery、Ajax,jquery,asp.net-mvc,asp.net-ajax,Jquery,Asp.net Mvc,Asp.net Ajax,我正在使用ajax.beginform并在控制器中调用json对象,以便在提交表单后呈现表单对象。我想插入一个从数据库中获取数据的新表行。正确的方法是什么?我需要jquery函数的帮助。这是我的密码 查看 @using (Ajax.BeginForm("SubmitForm", "Controller", null, new AjaxOptions { HttpMethod = "POST", OnSuccess = "Rende

我正在使用ajax.beginform并在控制器中调用json对象,以便在提交表单后呈现表单对象。我想插入一个从数据库中获取数据的新表行。正确的方法是什么?我需要jquery函数的帮助。这是我的密码

查看

@using (Ajax.BeginForm("SubmitForm", "Controller", null, new AjaxOptions

        {
            HttpMethod = "POST",
            OnSuccess = "RenderObjectsAfterSubmit(data);"
        }))

{ 

<div>Request # <span id="ID"></span></div>
<div>
    @Html.Label("Name")
    <div>
        @Html.TextBoxFor(model => model.Name)
    </div>
</div>
<button type="submit" id="btnSubmit">Submit</button>

<table id="myTable">
    <thead>
        <tr>
            <th>Name</th>
        </tr>
    </thead>
    <tbody>
        @foreach (var item in Model)
        {
            <tr>
                <td>@item.Name</td>
            </tr>
        }
    </tbody>
</table> 
}
试试这个

$("<tr><td>"+$('#Name').text()+"</td> </tr>").appendTo("#myTable");
$(“+$”(“#名称”).text()+).appendTo(“#myTable”);
在onsuccess函数中

试一试

$(“#myTable”).append(“+$('#Name').val()+”);

我不得不改变我做事的方式。我只是在OnSuccess函数中添加了一个Id,就可以让它工作了。看起来是这样的


onSuccess(数据“#myTable”、“#ajaxresult”、“#btnSubmit”)

我不清楚如何写这部分。我想在表(myTable)中插入一个新行。是否尝试在html表中插入一个以表单形式提供给数据库的名称?Mahesh,是的。我想在单击“提交”后在html表中插入一个新行。是的,我忘记了html()返回了一个对象,也许现在可以接受了。text()也返回了一个对象。我认为这与JSON的调用方式有关。通过查看我的代码,我没有发现问题。
public ActionResult SubmitForm(Model model)
{

if (ModelState.IsValid)
{
    try
    {
        return Json(new
        {
            success=true,
            model=model
        });
    }
}
}
$("<tr><td>"+$('#Name').text()+"</td> </tr>").appendTo("#myTable");
$("#myTable").append("<tr><td>"+$('#Name').val()+"</td> </tr>");