2016-02-29 14 views
0

我有一个WebMethod返回我下面的字符串:ASP.Net Ajax的 - JavaScript的:如何在HTML与返回的变量显示

{“d”:“在这里,你会发现更多的附加数据。”}

但在我后面的字符串的代码只声明

string result = "Here you will find more additional data" 

此字符串是要通过点击到一个HTML表格行可用于模态的视图,其弹出窗口。通过单击HTML表的一行,将读取一列,并传递给webmethod(在代码隐藏中)。 我如何可以显示不{ “d”:“}字符串?

这里是我的javascript代码:

function GetModalDetails() { 
     $('tbody tr').click(
      function() { 
       var id = $(this).data('id'); 
       var JSONData = '{\'id\':' + JSON.stringify(id) + '}'; 
       makeAjaxCall(JSONData, id); 
      }); 

     function makeAjaxCall(JSONData, id) { 
      $.ajax({ 
       url: "<%= ResolveUrl("TestPage.aspx/getDetails") %>", 
       data: JSONData, 
       type: "POST", 
       contentType: "application/json; charset=utf-8", 
       dataType: "json", 
       success: function (msg) { 
        var result = msg; 
        document.getElementById("ModalBody").innerHTML = JSON.stringify(result); 
        document.getElementById("ModalHead").innerHTML = "Details for" + JSON.stringify(id); 
       } 
      }) 
     } 
    } 

,这是我的HTML模态代码:

<!-- Modal --> 
<div class="modal fade" id="infoModal"> 
    <div class="modal-dialog"> 
     <div class="modal-content"> 
      <div class="modal-header"> 
       <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button> 
       <h3 class="modal-title" id="ModalHead">Auftragdetails</h3> 
      </div> 
      <div class="modal-body"> 
       <h5 class="text-center" id="ModalBody">Hier werden genauere Informationen zu dem geklickten Auftrag stehen.</h5> 
      </div> 
      <div class="modal-footer"> 
       <button type="button" class="btn btn-default " data-dismiss="modal">Close</button> 
      </div> 

     </div> 
     <!-- /.modal-content --> 
    </div> 
    <!-- /.modal-dialog --> 
</div> 
<!-- /.modal --> 

那么如何我可以显示正确的字符串吗?

给字符串一些HTML标记是否是一个好主意,莫代尔内容是否像我需要的样式?但是然后我会再次出现问题

{ “d”: “”}

请帮我:)

+0

replace'JSON.stringify(result)'for 'result.d' – CMedina

回答

1

这应该工作

function makeAjaxCall(JSONData, id) { 
     $.ajax({ 
      url: "<%= ResolveUrl("TestPage.aspx/getDetails") %>", 
      data: JSONData, 
      type: "POST", 
      contentType: "application/json; charset=utf-8", 
      dataType: "json", 
      success: function (msg) { 
       document.getElementById("ModalBody").innerHTML = msg.d; 
       document.getElementById("ModalHead").innerHTML = "Details for" + JSON.stringify(id); 
      } 
     }) 
    } 

这里是一个在模式呈现信息的代码body:

document.getElementById("ModalBody").innerHTML = msg.d; 
+0

非常感谢,非常帮助。但是,我已经离开了一个问题,例如我的字符串是:“

​​圈​​三角
”我怎么把这个给ModalBody,这样它会被解读为HTML和我的模式得到一个表视图? – Azeristar

+0

当您设置元素的innerHTML属性时,分配html内容应该没问题。 –