关于javascript null的问题

RainbowMink 2008-10-23 04:33:56
框架是dwr,后台是hibernate.

前台代码如下

ServerCall.getArticleCls
(
function(result)//此处有bug,当数据库为空时,不能准确判断result
{
if(result)
{
for(var i=0;i<result.length;i++)
{
insertArtclsOption(result[i]);
}
}
else
{
var opt=document.createElement("option");
opt.innerText="默认分类";
opt.value="1";
opt.selected=true;
$("artClass").appendChild(opt);
}
}
);



后台代码如下:

protected List<SArticleclass> getAllClass()
{
List<SArticleclass> l=new ArrayList<SArticleclass>();
Session session =HibernateSessionFactory.getSession();
String hql="From Articleclass as ac";
Query q;
try
{
q=session.createQuery(hql);
Iterator<Articleclass> it=q.list().iterator();
if(it.hasNext())
{
while(it.hasNext())
{
SArticleclass sac=new SArticleclass();
try
{
common.assignClassValue(sac,it.next());
l.add(sac);
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
else
{
return null;
}
}
catch (Exception e)
{
e.printStackTrace();
return null;
}
return l;
}

==============================
问题: 如果数据库中没有数据的话

前台判断if(result)的时候 浏览器报错, 说null为空或者不是对象,
如果用if(result!='null')判断则可以过, 但是, 后面的result.length会出错.
alert(typeof result); 是object而不是string.
这种问题要怎么解决???
我在其他页面中代码也是类似这种风格 几乎是一模一样, 就取了不同表的数据, 这里竟然打死都判断不出来.
跪求解决办法!!!!!
...全文
310 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
RainbowMink 2008-10-23
  • 打赏
  • 举报
回复
那就当做散分吧,哈哈 :-)
  • 打赏
  • 举报
回复
那就当做散分吧,哈哈 :-)
neo_yoho 2008-10-23
  • 打赏
  • 举报
回复
什么怎么办?
RainbowMink 2008-10-23
  • 打赏
  • 举报
回复
我搞定了 怎么办啊?
JJZHK 2008-10-23
  • 打赏
  • 举报
回复

neo_yoho 2008-10-23
  • 打赏
  • 举报
回复
用if(result!=null)试试

52,783

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧