我可以加吗
$("#report").html('Html.Action("ReportPage", new { id = Model.GoalId })')
这里报告是我要放置操作结果的 div 的 id ReportPage id 是传递给 ReportPage actionresult 的参数
我可以加吗
$("#report").html('Html.Action("ReportPage", new { id = Model.GoalId })')
这里报告是我要放置操作结果的 div 的 id ReportPage id 是传递给 ReportPage actionresult 的参数
您需要使用服务器标签来实现这一点。所以:
$("#report").html('@Html.Action("ReportPage", new { id = Model.GoalId })')
或者
$("#report").html('<%= Html.Action("ReportPage", new { id = Model.GoalId }) %>')
如果这就是您所说的操作 ReportPage 的结果。
但是,如果操作 ReportPage的结果是指 MVC 操作返回的实际结果(即:视图、json ..),则必须使用类似这样的东西
$.get('@Html.Action("ReportPage", new { id = Model.GoalId })', function(data) {
$("#report").html(data);
});
希望这可以帮助
PS:有关 jQuery.get() 的更多详细信息,请参阅http://api.jquery.com/jQuery.get/
这样,您的操作 html 将在主页加载后由 ajax 加载。
css
.support {display: hidden;}
html
<div class="support">
<div class="report-page">
<a href="Url.Action("ReportPage", new { id = Model.GoalId })" />
</div>
</div>
js
var url = $('.support .report-page a').prop('href');
$.get(url, null, function(html){
$('#report').html(html);
}, html);
或者,如果你只想要一个 http 请求,你可以这样做:
css
.support {display: hidden;}
html
<div class="support">
<div class="report-page">
@Html.Action("ReportPage", new { id = Model.GoalId })
</div>
</div>
js
var html = $('.support .report-page').html();
$('#report').html(html);