意外的POST

时间:2011-12-07 15:13:53

标签: javascript onclick toggle image

我的页面中有以下代码段。

<script type="text/javascript">
      function expandCollapse(id){
        var produtos;
        if(id != null){
            produtos = document.getElementById("produtos_str21");
            if(produtos != null){ 
                if(produtos.style.display != "none"){
                    id.src="imgs/minus.png";
                    produtos.style.display = "none";
                }else{
                       id.src="imgs/plus.png";
                    produtos.style.display = "block";
                }
            }
        }
        return false;
    }
</script>
    <td>
       <input type="checkbox" name="pedidosSelected" value="str26" id="selectPedido_str26">
       <input type="image" name="" src="imgs/plus.png" onclick="javascript:expandCollapse(this)"                 id="colExpPedido_str21">
    </td>
    <td>str1</td>
    <td>str26</td>

* - &gt;表格位于表单

每次我点击图片时,我会像预期的那样转到expandCollapse函数,但是当我输入if语句来检查显示是“block”还是“none”时,页面会发布一个帖子并且它永远不会“扩大”或“崩溃”这个表。即使我发表评论代码id.src =“imgs / minus.png”发布的帖子。为什么发生这个帖子? 如果没有发生这种情况,每次我更改img的src属性时,它都会进行POST或GET下载de image?如果是的话我怎样才能在两次映像之间切换而不是每次都更改src而不下载它们属性

2 个答案:

答案 0 :(得分:2)

获取GET以获取图像。如果它被缓存,则不应该是完整的请求 - 不应该返回图像。

“图像”输入是提交。除非您从处理程序返回false,或以某种方式preventDefault返回,否则表单将提交。

答案 1 :(得分:0)

input type="image"是表单提交元素。您似乎没有任何形式,但渲染器可能会隐式创建一个以使您的HTML实际有效。然后,你没有采取任何措施阻止表单提交。

<img>代码有什么问题?