“Uncaught ReferenceError: e没有定义”我想我已经定义了e

时间:2021-08-30 18:57:05

I get an error in the console saying "Uncaught ReferenceError: e is not defined" The button I am clicking has the name "sendtxt". I made sure it has function(e) on it

我在控制台得到一个错误,说“未捕获的ReferenceError: e没有定义”按钮,我点击的按钮的名称是“sendtxt”。我确保它有函数(e

<script type="text/javascript">
    $(document).ready(function() {


        $('input[name="sendtxt"]').click(function(e) {
            sendText();
        });

    });
    /************ FUNCTIONS ******************/

    function sendText() {
        e.preventDefault();
        var phonenum = $('input[name="phonenum"]').val();
        var provider = $('select[name="provider"]').val();
        $.ajax({
            type: 'POST',
            data: {
                provider: provider,
                phonenum: phonenum
            },
            url: 'send.php',
            success: function(data) {
                console.log('Success');

            },
            error: function(xhr, err) {
                console.log("readyState: " + xhr.readyState + "\nstatus: " + xhr.status);
                console.log("responseText: " + xhr.responseText);
            }
        });
    };

1 个解决方案

#1


0  

You're not passing on e.

你没有传递e。

$(document).ready(function() {
    $('input[name="sendtxt"]').click(function(e) {
        sendText(e);  // <<<
    });
});
/************ FUNCTIONS ******************/

function sendText(e) {    // <<<
    e.preventDefault();
}

But really, that's easier written as:

但实际上,这更容易写成:

$(function() {
    $('input[name="sendtxt"]').click(sendText);
});
/************ FUNCTIONS ******************/

function sendText(e) {
    e.preventDefault();
}

jQuery event handlers expect a function, and sendText is a function. No need to wrap it in another function.

jQuery事件处理程序需要一个函数,而sendText是一个函数。不需要用另一个函数来包装它。

#1


0  

You're not passing on e.

你没有传递e。

$(document).ready(function() {
    $('input[name="sendtxt"]').click(function(e) {
        sendText(e);  // <<<
    });
});
/************ FUNCTIONS ******************/

function sendText(e) {    // <<<
    e.preventDefault();
}

But really, that's easier written as:

但实际上,这更容易写成:

$(function() {
    $('input[name="sendtxt"]').click(sendText);
});
/************ FUNCTIONS ******************/

function sendText(e) {
    e.preventDefault();
}

jQuery event handlers expect a function, and sendText is a function. No need to wrap it in another function.

jQuery事件处理程序需要一个函数,而sendText是一个函数。不需要用另一个函数来包装它。