1

ドロップダウンボックスがあるjspがあります。ユーザーがドロップダウン ボックスからアイテムを選択するたびに、その情報が表示されます。このために、私は ajax を使用しています。この目的のためにデータを渡す serveResource 関数を作成しました。次のコードは、データベースからデータを収集し、次のように JSONArray に格納する serveResource 関数です。

   JSONArray jsonArray = JSONFactoryUtil.createJSONArray();
   jsonArray.put(syudname.toString());
   jsonArray.put(studdiv.toString());
   jsonArray.put(studimageURL);

   response.getWriter().write(jsonArray.toString());

ajaxのsuccess関数を使ってjsp上にデータが正常に表示されています。このコードは次のとおりです。

 type: 'POST', 
    dataType : "json", 
        success : function(jsonArray) { 

            alert(jsonArray);

            $('#studDetails').append(jsonArray[0]+"<br/>");
            $('#studDetails').append(jsonArray[1]+"<br/>");
            $('#studDetails').append(jsonArray[2]+"<br/>");
            var image = jsonArray[2];
            alert(image);

        } 

ドロップボックスからアイテムを選択すると、その情報 (jsonarray を使用して取得したもの) が表示されます。しかし、ドロップボックスから別のアイテムを選択すると問題が発生します。この時点で、新しく選択したアイテムのデータが、以前に選択したアイテムのデータに追加されます。私はjsonarrayを持っていなかったときに、.html()の代わりに.html()関数を使用していました。jsonarray に .html() を使用すると、配列の最後の要素のみが表示されます。どうすればこれを回避できますか? 私の2番目の問題は、画像の代わりにそのパスが表示されることです.どのように画像を表示する必要がありますか?上記のstdDetailsは、すべてのデータを表示しているdivのIDであることに注意してください..

4

1 に答える 1

2

このようなもの:

$('#studDetails').html(jsonArray[0]+"<br/>" + jsonArray[1]+"<br/>" + "<img src='" + jsonArray[2] + "'/><br/>");
于 2013-05-27T08:26:05.950 に答える