1

我有一个jsp,其中有一个下拉框。每当用户从下拉框中选择任何项目时,都应显示其信息。为此,我正在使用 ajax。为此,我创建了serveResource 函数来传递数据以下代码是serveResource 函数,我从数据库中收集数据并将其存储在JSONArray 中,如下所示:

   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() 函数。当我将 .html() 用于 jsonarray 时,仅显示数组的最后一个元素。我怎样才能避免这种情况?我的第二个问题是显示它的路径而不是图像。我应该如何显示图像请注意上面的studDetails是我显示所有数据的 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 回答