无法加载Struts2-Jquery的远程对话框

时间:2012-12-03 15:33:56

标签: javascript jquery jsp struts2 struts2-jquery

使用Struts2 Jquery插件,请看一下这段代码。

<s:iterator status="stat" value="primeDisplayLocationBeans">
    <tr>
        <td class="last center">        
            <sj:a openDialog="myremotedialog" href="opendemographicdetails?locationId=%{id}">
                Demographic
            </sj:a>
            <sj:dialog id="myremotedialog"   autoOpen="false" 
                    title="Demographic Details" width="800"/>
        </td>
    </tr>
</s:iterator>

现在代码发生了什么,创建了一个动态链接列表,如果我点击这些链接,它将在远程对话框中打开相应的内容。但问题是第一行链接不起作用,但所有其他链接都在工作正确并打开相应的对话框。对于第一个链接,甚至对话框都没有打开。 它在Java脚本控制台中显示的错误是:

  

无法设置未定义的属性'href'

1 个答案:

答案 0 :(得分:1)

您正在为多个元素is against (X)HTML specs分配相同的ID,并且不允许您稍后唯一地引用某个元素(其中多个元素具有相同的ID)。

使用以下内容参数化您的ID:

<s:iterator status="stat" value="primeDisplayLocationBeans">
   <tr>
      <td class="last center">
         <sj:a openDialog="myremotedialog_%{#stat.index}" 
               href="opendemographicdetails?locationId=%{id}">Demographic</sj:a>

         <sj:dialog id="myremotedialog_%{#stat.index}" 
                    autoOpen="false" title="Demographic Details" width="800"/>


      </td>
   </tr>
</s:iterator>