超出最大调用堆栈

时间:2016-05-27 02:48:58

标签: javascript

那是我的代码,为什么我总是遇到这个错误? 我的代码没有循环。 尝试浏览器,但我得到了相同的结果。

$(document).on('click', '#add_sup_btn', function() {
                var data = {
                    nama : document.getElementById("name_sup"),
                    alamat : document.getElementById("address_sup"),
                    phone : document.getElementById("phone_sup"),
                    email : document.getElementById("email_sup"),
                    name_pic : document.getElementById("name_pic"),
                    phone_pic : document.getElementById("phone_pic"),
                    email_pic : document.getElementById("email_pic")
                }
                sendData(data);
            });

        function sendData(param) {
            $.ajax({
                type : 'POST',
                url : 'upload/add_suplier',
                dataType : 'json',
                data : param,
                success  :function() {
                    $('#addSuplier').hide();
                    $('.modal-backdrop').hide();
                    console.log();
                },
                error : function() {
                    alert('Fail');
                }
            });
        }

1 个答案:

答案 0 :(得分:2)

您正在尝试将DOM元素作为JSON请求发送。 DOM元素不能以这种方式编码,如果可以的话,会包含太多信息(宽度?高度?事件处理程序?子节点和父节点等等)。实际上,您获得的具体错误可能是由于父项和父项的子项递归嵌套到DOM树中的子项而引起的。

相反,在设置value时,请使用data属性(或包含您要发送的实际信息中的任何一个):

data.nama : document.getElementById("name_sup").value

例如。