0

jQueryによるサーブレットへのajax呼び出しがあります:

function updateMapping() {
        $.ajax({
            type : "POST",
            url : "/tool/updateMap",
            data : "mapArray=" + mapArrayVar+ "&submit=Update",
            datatype : "html",
            success : function(data) {
                $(document).ajaxStop(function() {
                    location.reload(true);
                }); 
            }
        });

    }

この呼び出しは問題ありませんが、ページのリロード中に更新した後、「submit = Save」属性でサーブレットを再度呼び出します。

<span> <input type="submit" name="submit" class="buttonabc" value="Save" />

したがって、データは2回保存されます

4

1 に答える 1

0

ボタンでイベントを渡します。

<input type="submit" name="submit" class="button60" value="Update"
  onclick="updateZoneCircleMapping(event)" /> 

JavaScript では、デフォルトのアクションを防止します。

function updateMapping(e) {
        e.preventDefault(); //prevents form from submitting
        $.ajax({
            type : "POST",
            url : "/tool/updateMap",
            data : "mapArray=" + mapArrayVar+ "&submit=Update",
            datatype : "html",
            success : function(data) {
                $(document).ajaxStop(function() {
                    location.reload(true);
                }); 
            }
        });

}
于 2013-08-16T07:47:50.213 に答える