我有一个通过ajax搜索数据库表的函数。
这是函数在错误控制台中显示为未定义的变量
function find_file(query)
{
var xtoken = $("input[name='xtoken']").val();
var uri = site_url+'admin/media/search';
//make request to controller method
$.get(uri,{ 'xtoken' : xtoken,'query':query },
function(data) {
var dataLength = data.length;
if(dataLength < 1)
{
$.gritter.add({title:'Notice',text:'No matching results',sticky:false,time:'3000'});
}else {
var dataGrid = $('#files table tbody');
dataGrid.html('');
$.each(data,function(index,file)
{
var media_thumbnail ="";
if((file.file_type == "image/jpeg") || (file.file_type == "image/png") || (file.file_type == "image/png"))
{
media_thumbnail = '<img src="'+file.file_path+'" height="60" width="46" />';
}
if((file.file_type == "audio/mp3") || (file.file_type == "audio/wma"))
{
media_thumbnail = '<img src="'+site_url+'assets/admin/audio.png" />';
}
dataGrid.append(
'<tr class="files" id="'+file.file_id+'">'+
'<td><input id="file_id" type="checkbox" name="file_id[]" value="'+file.file_id+'" /></td>'+
'<td>'+
'<div class="media_preview">'+media_thumbail+'</div>'+
'<a href="'+site_url+'admin/media/editmedia/'+file.file_id+'">'+file.file_name+'</a>'+
'</td>'+
'<td>'+file.file_type+'</td>'+
'<td>'+file.author+'</td>'+
'<td>'+file.upload_date+'</td>'+
'</tr>'
);
});
}
});
}
当代码执行时,我得到一个错误说VAR media_thumbnail是不确定的,即使我变量声明为空“var media_thumbnail = "";
” 我设置了var media_thumbail的测试后的值一个来自JSON返回ajax调用的对象。
看到代码
var media_thumbnail ="";
if((file.file_type == "image/jpeg") || (file.file_type == "image/png") || (file.file_type == "image/png"))
{
media_thumbnail = '<img src="'+file.file_path+'" height="60" width="46" />';
}
if((file.file_type == "audio/mp3") || (file.file_type == "audio/wma"))
{
media_thumbnail = '<img src="'+site_url+'assets/admin/audio.png" />';
}
什么是错我的这部分功能?
应该有人真的标志缺失这一问题,它绝不带来任何新的知识,SO。 – puk
这是网站的要点吗?我认为这是一个解决问题的程序员社区。如果这只是一个愚蠢的观点,那么是的,删除,但这家伙有问题,看起来他可能有一个答案得益于这个地方。感激可能会说服他在未来帮忙。 –
@凯青我没有试图侮辱他/她的智慧。我很高兴他/她在这里找到了答案。我只是看不到宇宙如何被删除而受到影响。 – puk