C# jquery post进入循环

C# jquery post进入循环,c#,jquery,asp.net,C#,Jquery,Asp.net,我有这个代码,我用它在“回车”键上发布一条消息,但它是循环的,不是发布一条消息,而是随机发布多次 这是我在上调用的函数,如有任何帮助,将不胜感激 function PostMessage(event,key) { $('#txtsendmsg'+key).on("keypress", function (e) { if (e.which == 13) { var msgid = $(this).siblings('.msgid').val();

我有这个代码,我用它在“回车”键上发布一条消息,但它是循环的,不是发布一条消息,而是随机发布多次

这是我在
上调用的函数,如有任何帮助,将不胜感激

function PostMessage(event,key) {
    $('#txtsendmsg'+key).on("keypress", function (e) {
        if (e.which == 13) {
            var msgid = $(this).siblings('.msgid').val();
            var msgtxt = $(this).val();
            $.ajax({
                url: "student_post_login.aspx/funPostMessage",
                data: 'postd=' + "Y" + '&msgid=' + msgid + '&msgtxt=' + msgtxt,
                success: function (data) {
                    if (data) {
                        displayData();
                    }

                },
                failure: function (response) {
                    alert("Faliure:");
                },
                error: function (response) {
                    alert(response);
                }
            });
            e.preventDefault();
        }

    });
}

问题在于,每次点击输入字段中的a键时,都会附加一个事件处理程序。按两次键,你会收到两个请求,三次;三个等等

尝试仅使用jQuery而不是
onclick
属性分配处理程序:

<input id='txtsendmsg" + i + "' placeholder=\"Write a comment...\" class='msgtxt' />

问题在于,每次点击输入字段中的a键时,都会附加一个事件处理程序。按两次键,你会收到两个请求,三次;三个等等

尝试仅使用jQuery而不是
onclick
属性分配处理程序:

<input id='txtsendmsg" + i + "' placeholder=\"Write a comment...\" class='msgtxt' />

不知道这是否有帮助,但您可以在ajax代码中尝试async:false,在success函数中也可以尝试返回false。我知道您正在使用e.preventDefault(),但仍然。同样从PostMessage本身来看,您应该返回false;你能发布你的displayData()代码吗?可能是罪魁祸首在那里?不知道这是否有帮助,但您可以在ajax代码中尝试async:false,也可以在success函数中尝试返回false。我知道您正在使用e.preventDefault(),但仍然。同样从PostMessage本身来看,您应该返回false;你能发布你的displayData()代码吗?可能是凶手在里面?我相信他每次按一个键都在连接处理器,不仅是
enter
@AlexFilipovici你说的没错,先生。那就更糟了:)嘿,谢谢,但是代码只在一个回车键上循环,我试过如果我用php但不是在aspx中它工作得很好。还有其他建议吗?我相信他每次按键时都会附加处理程序,不仅仅是
enter
@AlexFilipovici你说得对,先生。更糟糕的是:)嘿,谢谢,但是代码只在一个enter上循环,我试过,如果我使用php,但不在aspx中,它工作得很好。还有其他建议吗?