Jquery 如何在单击HTML按钮时呈现部分页面?

Jquery 如何在单击HTML按钮时呈现部分页面?,jquery,asp.net-mvc-3,renderpartial,Jquery,Asp.net Mvc 3,Renderpartial,我是MVC3.0新手,必须使用jquery。我想知道有人可以帮助我如何在单击HTML按钮时呈现部分视图页面 我知道这真的很简单,这个按钮可以称为“email to”,它将用于一个名为“emailForm”的partialView。但是我需要一些帮助。您可以在之前呈现页面,但要在隐藏的div中呈现,或者您可以在单击后使用AJAX加载页面 隐藏分区 使用Ajax加载 要做到这一点,您需要在一个控制器中创建一个ActionResult,该控制器将呈现部分对象 <div id="partial"&

我是MVC3.0新手,必须使用jquery。我想知道有人可以帮助我如何在单击HTML按钮时呈现部分视图页面


我知道这真的很简单,这个按钮可以称为“email to”,它将用于一个名为“emailForm”的partialView。但是我需要一些帮助。

您可以在之前呈现页面,但要在隐藏的div中呈现,或者您可以在单击后使用AJAX加载页面

隐藏分区 使用Ajax加载 要做到这一点,您需要在一个控制器中创建一个ActionResult,该控制器将呈现部分对象

<div id="partial"></div>

<button type="button" id="load-partial" />

如果可能的话,我会说@smdrager的反应是理想的路线。但是,如果您需要从ajax请求中获取html,有很多方法可以做到这一点。。。下面是一个例子:)

在模板中,您将有一个按钮或链接,以及一个用于内容的div容器:

<a href="javascript:void(0)" id="emailTo">email to</a>
<div id="emailToContent"></div>
确保传递到javascript
$.get
调用中的url指向返回部分代码的操作


这是一个非常基本的实现,如果您的情况变得更复杂(异常处理、参数传递等),它很容易变得更复杂,但是当我需要启动一个简单的ajax请求时,总的布局对我来说很有用。

我以前从未见过
加载
jquery函数。。。一直以来我都在使用
$。像个傻瓜一样获得
:)现在你知道了。。。而了解是成功的一半。J.I.乔!为了让jQuery在这方面更性感,可以用“$”(“#emailToContent”).load(“;”)替换“$”.get(”,函数(数据){$(“#emailToContent”).html(数据);}`像@smdrager在他的帖子中写道的那样
<div id="partial"></div>

<button type="button" id="load-partial" />
$('#load-partial').click(function(){
    $('#partial').load('/TheController/TheAction/');
});
<a href="javascript:void(0)" id="emailTo">email to</a>
<div id="emailToContent"></div>
<script type="text/javascript">
  $("#emailTo").click(function(){
    $.get("<url to partial>", function(data){$("#emailToContent").html(data);}
  });
</script>
public ActionResult EmailTo()
{
  ...
  return PartialView("some partial")
}