0

我的网页有加载图像的剑道网格和一个“图表地图”按钮。

在此处输入图像描述 当我们单击“Graph Map”按钮时,会弹出另一个窗口,该窗口将显示第一个网格记录中的图像,然后单击“Next”/“Prev”按钮,我们可以移动到第二个、第三个图像等等。 .

我提供了整个视图的最小化版本,如下所示

<div class="container" onclick="onContainerClick();">
<div class="row">
    <div id="tabstrip"></div>
    <div class="col-md-12 table-responsive table-bordered" style="padding-right: 0px; padding-left: 0px" id="mapsDiv" width="100%">

    </div>
</div>
<div class="row col-md-12 col-md-push-11">
    <button id="btnGraph" onclick="onShowGraph()">Graph Map</button>
</div>

   <div id="graphsWindow" >
   <div class="table" style="height:700px;">
    <div class="row" style="margin-left:0px;margin-top:0px; padding-top:0px; padding-bottom:0px">

    <div style="border:groove; margin-left:10px; margin-bottom:0px; padding-bottom:0px; margin-right:2px;" class="col-md-2">
        <div class="row" style="padding-top:5px; margin-top:0px; padding-left:5px; padding-right:5px">
            <div class="col-md-1" style="padding-left:0px; margin:0px; width:auto;">
                <img src="~/Images/profile.png" height="85" width="85" id="studentPhoto"/>
            </div>
          </div>
       </div>
    </div>
  </div>
</div>

onShowGraphs

function onShowGraphs(){
  var window = $("#graphsWindow").data("kendoWindow");
  ...
  var grid = $('#mapsDiv').data("kendoGrid");
        var rows = grid.dataSource.data();

  $('#studentPhoto').attr("src", rows[_currGridRowNo]["photo"]);

  window.open().center();
}

在这种情况下,我收到错误 [Request Uri too long 414]。

  1. 尽管窗口存在于同一视图中,为什么 kendoWindow 将此数据作为查询字符串?

  2. 我该如何纠正这个问题?

4

1 回答 1

0

我只需要添加“data:image/gif;base64”。所以我的功能变成

function onShowGraphs(){
var window = $("#graphsWindow").data("kendoWindow");
 ...
var grid = $('#mapsDiv').data("kendoGrid");
var rows = grid.dataSource.data();

$('#studentPhoto').attr("src", "data:image/gif;base64," + rows[_currGridRowNo]["photo"]);

window.open().center();}
于 2017-10-25T00:47:47.340 回答