表单提交后不要重置属性

时间:2014-09-01 11:42:39

标签: javascript jquery html forms

我有提交form#statisticForm的代码。在我编写的脚本中,我替换src,它位于span元素内:

<form id="statisticForm">
    <input type="hidden id="statisticForm:fsp" />
    <span id = "span1" class="a-custom-sorting">
        <img src="img.jpg"/>
    </span>
    <!--Another such span elements -->
    <span id = "span123" class="a-custom-sorting">
        <img src="img.jpg"/>
    </span>
</form>

脚本:

jQuery('.a-custom-sorting').click(function() {
    var submitField = document.getElementById("statisticForm:fsp");
    var img = jQuery(this).find("img");
    var new_src;
    switch (img.attr("src")) {
        case "img.jpg":
        case "second_clicked_img.jpg":
            new_src = "img1.jpg";
            break;
        case "first_clicked_img.jpg":
            new_src = "img2.jpg";
            break;
    }
    img.attr("src", new_src);
    submitField.value = this.id;
    document.getElementById("statisticForm").submit();
});

但是在使用上面的脚本进行表单提交之后,我点击的src元素中的img标记的span属性等于img.jpg。但我希望在表单提交后,src属性不会更改它的值。怎么办呢?

1 个答案:

答案 0 :(得分:0)

如果在提交后刷新页面,则会在.click()中丢失切换,并且DOM会重新加载默认属性。 您可以使用ajax创建表单并在回调时进行更改,或者在刷新后设置变量,并在文档就绪时设置新属性。