使用jQuery渲染部分

时间:2012-01-13 21:12:42

标签: jquery asp.net-mvc-3 partial-views

我正在尝试使用MVC3中的jQuery进行部分渲染。我想这样做我更改了一个部分中的HTML,以便在下拉列表的选择发生变化时更新它。

$(document).ready(function(){

    $("#partial-6").html(@Html.Partial("_Edit",Model.Groups[0]));

});

加载页面时不修改部分。只是说我在那里打字“我偏爱”

1 个答案:

答案 0 :(得分:2)

除非asp代码添加引号,否则您需要这样做。否则,您没有将字符串传递给.html()函数:

$(function(){
    $('#drop-down-id').on('change', function () {
        $("#partial-6").html('@Html.Partial("_Edit",Model.Groups[0])');
    });
});

每次更改#partial-6元素时,都会将相同的代码放入#drop-down-id元素中。如果您想要实际更改放在#partial-6元素中的信息,则需要进行AJAX调用以从服务器返回部分内容。

$(function(){
    $('#drop-down-id').on('change', function () {
        $.get('path/to/server-side.asp', { id : $(this).val() }, function (serverResponse) {
            $("#partial-6").html(serverResponse);
        });
    });
});

这将为使用GET变量id发送的服务器端脚本创建GET请求,该变量设置为触发代码的下拉列表的值。

请注意,.on()是jQuery 1.7中的新功能,在这种情况下与.bind()相同。