0

我正在开发我网站的一部分,人们可以在其中对出版物进行投票,我在同一页面上有很多,接下来每个出版物都有两张图片,一张表示同意,另一张表示不同意。我想更改图像,所以当有人投票时,无论是否同意,图像都会更改为他已经投票。这是我的代码:

JPS:

<logic:iterate id="comment" name="Liste_Comments" scope="request">   
<html:img  src="pages/images/ok.png" alt="Vote pour!" paramId="code" paramName="comment"   paramProperty="code" onclick="voterComment('pour');"/> 

<html:img  src="pages/images/ko.png" alt="Vote contre!" paramId="code" paramName="comment"  paramProperty="code" onclick="voterComment('contre');"/>       

       <bean:write name="comment" property="libelle" />       
       <bean:write name="comment" property="subject" /> 
       <br>       
</logic:iterate>

脚本:

<script type="text/javascript">
            function voterComment(vote) {            
                var url = "<%=request.getContextPath()%>/VoteComment.do";
                new Ajax.Request(url, {
                    parameters: {vote: vote},
                    onSuccess: function(transport, json) {
                        if (json.error) {
                            alert(json.error);
                        }
                        else{
                            window.event.srcElement.src = "pages/images/photo.jpg";
                        }
                    }
                });
            }
   </script>

我在访问被点击的图像时遇到问题!!

提前谢谢你们,感谢你们的大力帮助:)

4

1 回答 1

0

您可以更改 html 以将值发送this到单击处理程序。这将包含对源元素的引用——在本例中是被点击的图像。

<html:img ...  paramProperty="code" onclick="voterComment(this, 'pour');"/> 

Javascript:

function voterComment(sourceImage , vote) {       
   var url = "<%=request.getContextPath()%>/VoteComment.do";
   new Ajax.Request(url, {
       parameters: {vote: vote},
       onSuccess: function(transport, json) {
          if (json.error) {
              alert(json.error);
          }
          else{
              sourceImage.src = "pages/images/photo.jpg";
          }
       }
   });
}
于 2013-06-30T21:11:09.623 回答