jquery对话框加载为空,为什么?

时间:2013-11-12 12:53:43

标签: jquery asp.net-mvc-3

  1. 我有一个主视图(比如一个下拉列表),我用模型“TabViewModel”绑定视图。

  2. 在主视图中我有一个链接按钮,点击后我需要调用一个jquery对话框,在这个对话框中我需要显示相同的下拉列表(我在主视图中从DDL中选择一个项目,需要在这里显示所选。)

  3. 要获取所选DDL的值,我们在下面的调用中执行$ .post并调用下面的控制器方法,该方法在jquery对话框中加载局部视图。

    $(function(){

    $ .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,data)

    .success(function(result){

    警报(结果);

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

    $(dialogDiv).dialog({

    / 选项 /});

    返回false;

    });

    });

    public ActionResult OpenReportDialog(TabViewModel model)

    {   返回PartialView(模型); }

  4. 一切都很完美,但jquery对话框没有任何内容,但我们得到了正确的HTML(警告(结果); )。

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

    @ Model.FirstName(示例)
  6. 请让我知道jquery代码有什么问题,为什么Html没有使用对话框呈现。谢谢!

2 个答案:

答案 0 :(得分:0)

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

var dialogDiv = "";

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

$(dialogDiv).html(result);

使用

更新上述声明
$("#Idofyourdiv").html(result);

希望有所帮助

答案 1 :(得分:0)

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

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