我正在使用ASP MVC3,我正在使用部分视图,但问题是无法将脚本加载到同一个视图中。 以下是我试过的代码:
<script type="text/javascript">
$('#bodytag').load(function () {
alert('Load was performed.');
});
</script>
<div class="acc-expand-bkg" id="bodytag">
<div class="submenu_dropdown clearfix">
<div class="filter_bar clearfix">
<div class="left" style="margin-left: 10px;">
<label style="width: auto; margin-top: 7px;">
Standard:</label>
@Html.DropDownList("teamDetailId", ViewBag.TeamNames as SelectList, null, new { id = "teamDetailId" })
</div>
</div>
</div>
</div>
上面的部分视图没有加载脚本。我尝试使用document.ready它既不适用它。 你能告诉我相同的工作吗?
提前谢谢
答案 0 :(得分:1)
试试这样:
<script type="text/javascript">
alert('Load was performed.');
</script>
但通常不应将脚本放在部分视图中。它们不应与标记混合使用。通常脚本属于单独的javascript文件。因此,更好的方法是在单独的文件中定义javascript函数:
function doSomething() {
alert('Load was performed.');
}
然后在使用AJAX加载局部视图后调用此javascript函数:
$.ajax({
url: 'some url',
type: 'post',
success: function(result) {
$('#someId').html(result);
// the partial view was injected into the DOM => now we could
// invoke our function:
doSomething();
}
});
答案 1 :(得分:0)
load函数用于使用ajax从服务器加载内容并更新指定html元素的内部内容。您必须将服务器url
作为方法的第一个参数传递。
$('#bodytag').load('ajax/test.html', function() {
alert('Load was performed.');
});
您必须将脚本块放在html下面。