我有这段代码:
$('#search_field').keyup(function () {
LIBRARY.ajaxGet('{$addUrl}', {name: $(this).val()}, function(data) {
$('.contacts').html(data['html']);
});
});
如果$(this).val()
属性不为空,我需要name
作为值。如果是,则该对象应为空。
答案 0 :(得分:1)
您必须在外面创建对象,执行检查,然后将其传递到:
$('#search_field').keyup(function () {
var nameObj = {};
if ($(this).val()) {
nameObj.name = $(this).val();
}
LIBRARY.ajaxGet('{$addUrl}', nameObj, function (data) {
$('.contacts').html(data['html']);
});
});
答案 1 :(得分:1)
我不确定我到底知道你需要什么,但我想你想看看keyup
之后输入框中的值是否为空,那么你可以这样做:
$('#search_field').keyup(function () {
if(this.value.length > 0) {
// rest of your code ...
}
});
答案 2 :(得分:-1)
尝试将属性对象放在变量中:
var myParams = {};
if($(this).val().length > 0){
myParams = { "name": $(this).val() };
}
LIBRARY.ajaxGet('{$addUrl}', myParams, function(data){
$('.contacts').html(data['html']);
});