onkeyup instead of on submit

onkeyup instead of on submit

本文关键字:submit on of instead onkeyup      更新时间:2023-09-26

我使用的是这里找到的JTube: JTube at github

我正试图在keyup上请求而不是提交。脚本如下:

 var qsParm = new Array();
    function qs() {
        var query = window.location.search.substring(1);
        var parms = query.split('&');
        for (var i=0; i<parms.length; i++) {
            var pos = parms[i].indexOf('=');
            if (pos > 0) {
                var key = parms[i].substring(0,pos);
                var val = parms[i].substring(pos+1);
                qsParm[key] = val;
            }
        }
    }
    $(function() {
        qs();
        if(qsParm['search'] == '' || qsParm['search'] == null || qsParm['search'] == undefined)
            qsParm['search'] = 'splinter cell';
        else
            qsParm['search'] = unescape(qsParm['search']);
        $('input[name=search]').val(qsParm['search']);
        $.jTube({
            request: 'search',
            requestValue: qsParm['search'],
            limit: 10,
            page: 1,
            success: function(videos) {
                $(videos).each(function() {
                    $('#example').append('<li><a href="'+this.link+'"><img src="'+this.thumbnail+'"><br>'+this.title+'</a> - '+this.length+'</li>');
                });
            },
            error: function(error) {
                $('#example').html(error);
            }
        });
    });

据我所知,函数是"qs",因此我尝试:

$("input").onkeyup(function(){
     qs();
     return false;         
 });

没有工作。我尝试了许多其他的方法都没有成功。

改为:

$("input").keyup(function(){
     qs();
     return false;         
 });

onKeyup的jQuery版本称为keyup。一般来说,onXXX是DOM事件和jQuery处理程序根本没有on在他们。

您需要调用"sendQS"函数(在您的示例中是匿名的)来实际发送数据。另外,jquery函数是keyup而不是onkeyup

function sendQS() {
    qs();
    if(qsParm['search'] == '' || qsParm['search'] == null || qsParm['search'] == undefined)
        qsParm['search'] = 'splinter cell';
    else
...
}
$("input").keyup(function(e){
     sendQS();
     return false;         
 });

试试这样:

  $('#target').keyup(function() {
  alert('Handler for .keyup() called.');
});