2

このXMLファイルを取得します

$.ajax({type: "GET", url: "data.xml",dataType: "xml",success: parse });

<Data>
   <user>
      <U_ID>4787<U_ID>
      <U_NAME>Mickey Mouse</N_NAME>
      <U_TYPE>1</U_TYPE>
      <U_PIC>iVBORw0KGgoAAAANSUhEUgAAAHgAAAB0CAYAAABOpv</U_PIC> 
   </user>
</Data>

base64でエンコードされた画像が含まれている場所<U_PIC>(簡単なデモのためにここで文字列を切り取っていますが、実際には非常に長い文字列です)

どうすればいいですか

  • これを取得しますか?
  • base64 をデコードしますか (組み込み関数はありますか)?
  • DOM のどこかに表示しますか?
    //example: (<li><img src="'+retrievedPicture+'=></li>)

私は、標準のパーサー関数で次のような操作に慣れています。

$(xml).find('user').each(function(){  
   var $node = $(this);
   var name = $node.find('U_NAME').text();
   $('div').append(name);    

ps。notepad ++で実際のバイナリ画像をテストしましたが、エラーなしで真のpng画像です。

4

2 に答える 2

1

最新のブラウザーではData URIを使用でき、IE ではサーバー側スクリプトを使用して特定の文字列をデコードします。php では次のようになります。

<?php
 header('Content-type: image/png');
 echo base64_decode($_GET['b']);
?>
于 2010-02-09T22:24:01.083 に答える
0

IE では DataURI を使用して表示される画像サイズに制限があります

jQuery メソッドはこれを回避できますか?

試してみましたか?

于 2010-02-16T21:33:04.347 に答える