【问题标题】:jquery dialog loaded empty, why?jquery对话框加载为空,为什么?
【发布时间】:2013-11-24 15:16:24
【问题描述】:
  1. 我有一个主视图(比如有一个下拉菜单),我将视图与模型“TabViewModel”绑定在一起。

  2. 1234563需要显示为此处选择)。
  3. 要获取所选 DDL 的值,我们在下面的调用中执行 $.post 并调用下面的控制器方法,该方法在 jquery 对话框中加载部分视图。

    $(函数 () {

    $.ajaxSetup({ cache: false });

    // 连接任何当前或未来的对话链接的点击事件

    $('.dialogLink').live('click', function () {

    var dialogId = 'uniqueName-' + Math.floor(Math.random() * 1000)

    var dialogDiv = "";

    // 将表单加载到对话框div中

    var data = $('form').serialize();

    $.post(this.href, 数据)

    .success(函数(结果){

    警报(结果);

    $(dialogDiv).html(结果); })

    $(dialogDiv).dialog({

    /选项/});

    返回假;

    });

    });

    public ActionResult OpenReportDialog(TabViewModel 模型)

    { 返回部分视图(模型); }

  4. 一切都很完美,但是 jquery 对话框加载时什么也没有,但是我们得到了正确的 html (alert(result);)。

  5. 下面是部分视图(OpenReportDialog.cshtml) @model TabViewModel

    @Model.FirstName(示例)

请让我知道 jquery 代码有什么问题,为什么 Html 没有用对话框呈现。谢谢!

【问题讨论】:

  • 我怀疑,jquery 对话框加载到浏览器中,然后它会转到光标,然后再次部分视图代码循环并生成 HTML,但不刷新对话框?

标签: jquery asp.net-mvc-3


【解决方案1】:

您的目标对话框中没有选择器指向。

var dialogDiv = "";

因此您的 jQuery 对话框中没有显示任何内容。

$(dialogDiv).html(result);

更新上面的语句
$("#Idofyourdiv").html(result);

希望对你有帮助

【讨论】:

  • 你的意思是部分视图 div ID,不幸的是这也不起作用。当我看到包含我的部分视图的 HTML 时,它也包含 DIV....
    ...因此我认为 $("# idPartial").html(结果);不会工作..请建议。
  • 我怀疑,jquery 对话框加载到浏览器中,然后它会转到光标,然后再次部分视图代码循环并生成 HTML,但不刷新对话框?
【解决方案2】:

我找到了解决方案,我们需要这样做,

.success(function (result) {
 alert(result); 
 $(dialogDiv).html(result).dialog({
/options/});
 });

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多