【问题标题】:How to access Json return value in popup in jquery如何在jquery的弹出窗口中访问Json返回值
【发布时间】:2016-04-02 01:40:51
【问题描述】:

这是我的 Json 函数。使用 doAjax 函数,我从控制器访问值,然后给我值。

    function doAjax(type, url, data, callback) {
    $.ajax({
        type: type,
        url: url,
        data: data,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function (data) {          
            callback(data);           
        },
        failure: function (errMsg) {
            alert(errMsg);
        }
    });
}

这是我点击按钮时的 jquery 代码。当我使用调试器时,它具有值。

 $('.btn-setting').click(function () {       
    var data = "";
    doAjax("GET", "/Dashboard/OrderDetails/", data, function (result) {
        data = result;
        for (var i = 0; i < 1; i++) {
            var Html = "<ul><li><span>Name</span></li><li>??Name??</li></ul><ul><li><span>AirCraft Type</span></li><li>??AirCraftType??</li></ul>;
            Html = Html.replace("??Name??", data.Title + " " + data.FirstName + " " + data.LastName);
            Html = Html.replace("??AirCraftType??", data.AirCraftType);             
        }
    });
});

这是我的 div,我想在 div 弹出窗口中显示我的 json 值。

<div class="modal hide fade" id="myModal">
    <div class="modal-body">

    </div>
</div>

所以请帮助我获取弹出窗口中的值。 提前致谢

【问题讨论】:

  • 获取div的id并在div中绑定ul..var divID=document.getElementById('myModel');divID.appendChild(html);
  • @debin, appendChild 将不起作用,因为 html 是一个包含 tags 的字符串,appendChild 需要 DOM 对象作为参数..
  • 所以可能 b 只有 append() 才有效

标签: javascript c# jquery json model-view-controller


【解决方案1】:

假设您想将内容放在 modal-body 中,

使用 jquery:

$('.modal-body').html('html string')

使用javascript:

document.getElementsByClassName('modal-body')[0].innerHTML='html string'

【讨论】:

    【解决方案2】:

    这样试试

    success: function (data) { $('.modal-body').dialog(); }

    或者你可以附加数据

    【讨论】:

      【解决方案3】:

      var 数据 = [ {title:'tt', FirstName:'name first', LastName:'last name', AirCraftType:'Air Craft'}, {title:'tt1',FirstName:'name first1',LastName:'last name1',AirCraftType:'Air Craft 1'} ];

          var Html = "";
          $(data).each(function(i, value){
            Html = Html+ here your code ;
              //here you get value.title ,value.FirstName ...
          });
          $('div.modal-body', $('#myModal')).html(Html);
      

      【讨论】:

        【解决方案4】:

        使用 open 函数在对话框中加载 AJAX 结果。

        $('.btn-setting').click(function ()
             $("#myModal").dialog({
                            title: 'Dialog Title',
                            autoOpen: false,
                            resizable: true,
                            height: 350,
                            width: '550px',
                            show: { effect: 'drop', direction: "up" },
                            modal: true,
                            draggable: true,
                            open: function (event, ui) {
        
                                $.ajax({
                                    url: url //Your AJAX call URL,
                                    cache: false,
                                    context: this,
                                    success: function (result) {
                                        $(this).html(result);
                                    }
                                });
        
        
                            },
                            close: function (event, ui) {
                                }
                            }
                        });
                        });
        

        【讨论】:

          猜你喜欢
          • 2011-01-22
          • 1970-01-01
          • 2010-10-06
          • 2017-03-08
          • 1970-01-01
          • 1970-01-01
          • 2023-01-20
          • 1970-01-01
          • 2011-01-19
          相关资源
          最近更新 更多