我使用的是这里找到的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.');
});