如何在jsp页面中使用函数来更改div标签中的值?

时间:2013-02-05 14:29:12

标签: list jsp html onclicklistener

我有一个网站,其中使用函数打印列表,并<%= %>进行打印。然后,当我选择列表中的项目时,我想要在单独的<div>中更改值。

以下是创建字符串的函数:

public String createInfoString(String s){

                       JavaBeans.CatalogueBean c = new JavaBeans.CatalogueBean(); 
                       JavaBeans.ProductBean pb[] = c.getProducts(); 


                       int posit = Integer.parseInt(s); 
                       String tempStr =
                       "<img src='Images" + pb[posit].getImageExtention() + "'            width='400' height='300'></img> </BR></BR>"+                                               
                       "Model: " + pb[posit].getName()+ "</BR></BR>" +
                       "Description: " + pb[posit].getDescription() + "</BR></BR>"+
                       "Number in stock: " + pb[posit].getNumAvailable() + "</BR></BR>";

                       return tempStr;

                       }

列表的代码如下:

<ul  onclick="createInfoString(event.srcElement.id)">
                                      <li>
                    <div class="Folder">Accessories</div>
                                      </li>
                                            <%= createSideList()%>
                                </ul>

单击某个项目时,我需要生成一个字符串(这由createInfoString完成),然后我需要将该字符串推送到<DIV>,任何人都可以告诉我如何执行此操作?

用JavaScript我会用过 document.getElementbyID("DisplayInfo").innerHTML = tempStr
但这不适用于jsp

请帮助......

1 个答案:

答案 0 :(得分:0)

JSP在服务器端执行。如果您在点击某些内容时需要执行某些操作,则必须在客户端使用JavaScript完成。

所以你基本上有两种可能性:

  1. 将所有这些HTML块嵌入页面中的隐藏div中。单击UL时,使用Javascript提取相应隐藏div的内部HTML并将其复制到DisplayInfo div。
  2. 点击UL后,向您的webapp发送AJAX请求,让您的webapp返回相应的HTML块,并在AJAX响应处理程序中,将接收的内容设置为DisplayInfo div的内容。 / LI>