1

我希望在按钮单击时更改视图的内部 html,但保持视图。我知道如何在 javascript 中更改 div 的 html 内容,但是如何让按钮的操作不返回不同的视图?

我的按钮看起来像

<input type="submit" value="submit" onchange="myfunc()"/>

其中 myfunc() 是 Javascript 中更改 div 内容的函数。

4

1 回答 1

1

假设您想要一个使用 ajax 呈现内容的链接(并希望使用 razor),您可以执行以下操作:

首先,设置部分渲染内容的操作。这可以通过几种方式完成,但我将保留操作中的逻辑(并使其可直接或通过 ajax 调用):

[HttpPost]
public ActionResult Save(SomeModel model)
{
  /* build view */
  return Request.IsAjaxRequest() ? PartialView(model) : Wiew(model);
}

接下来,在您的页面中设置一个容器,其中内容将与您要提交的表单一起填充。如果您希望表单在保存时消失,请将其包装在容器中。否则,请将容器分开。在下面的示例中,from 将提交,成功后它将返回,否则新内容将出现在其位置:

<div id="ajaxContentPlaceholder">
  @using (Ajax.BeginForm("Save", new AjaxOptions { UpdateTargetId = "ajaxContentPlaceholder" })) {
      <!-- form elements -->
      <input type="submit" value="save" />
  }
</div>
于 2012-12-26T20:40:06.903 回答