小编dnu*_*tle的帖子

组合的错误:jQuery 1.4,ajax/json,Firebug Lite和IE 8

我刚刚得出结论,无论我怎么做,jQuery的ajax调用都无法在IE 8中使用JSON数据.我发现我可以使用jQuery 1.3.2库来修复这个问题,但1.4根本就不会用JSON ajax请求来玩.即使返回的JSON数据非常简单,也不存在格式无效的问题.例如:

{"x":"a"}
Run Code Online (Sandbox Code Playgroud)

这与我是否使用Java servlet返回JSON数据或简单的固定文本文件无关.无论dataType还是contentType.无论GET还是POST.无论我使用$ .ajax还是$ .getJSON.这一切都适用于Firefox 3.6.

然后我突然意识到要参考Firebug Lite和IT WORKED!突然间问题消失了.无论是在响应中(在servlet中)修改contentType,还是在请求中指定的dataType,它都可以工作.

如果我再次链接到Firebug Lite,问题就会返回...即使我的代码从未实际使用它.

有没有人见过这种行为,有没有人有修复或解决方法?我不想再停止使用Firebug Lite了.感谢您的任何见解.同样,只有在组合jQuery 1.4,Firebug Lite,JSON数据和IE 8时才会出现问题.

这是对servlet的ajax调用,如果重要的话:

$.ajax({
 cache: false,
 url:"http://localhost:8080/Performance_Reporting/TestServlet",
 type:"GET",
 contentType: "application/json",
 dataType: "json",
 timeout:30000,
 success: function(d, status, req)
 {
  $("#result").text(d.x);
 },
 error: function(req, status, err)
 {
  $("#result").text(req.responseText);
 }
})
Run Code Online (Sandbox Code Playgroud)

jquery firebug internet-explorer json

6
推荐指数
1
解决办法
1323
查看次数

SQLite/JDBC内连接

我发现SQLite JDBC驱动程序中似乎有一个错误,但我想我会看到有人能发现我的任何骨头错误.我有以下查询:

SELECT 
    SKU_ATTR_VALUE.*, 
    Product.ProductID 
FROM 
    SKU_ATTR_VALUE 
    INNER JOIN SKU 
    ON SKU_ATTR_VALUE.SkuID=SKU.SkuID 
    INNER JOIN Product 
    ON SKU.ProductID=Product.ProductID 
WHERE Product.ProductID=?
Run Code Online (Sandbox Code Playgroud)

很简单.我可以在SQLite数据库浏览器中运行它,取代?用1,它返回18行,这正是它应该做的.只有18行符合条件.但是当我在Java中运行它并传入值1时,我得到了817个值.这不是笛卡尔式的加入; SKU_ATTR_VALUE中有864个可能的值.我得到的结果对于Product中的每条记录至少有一个值...所以我真的无法想象发生了什么.

我一直在看这个,我完全被难过了.谷歌搜索似乎没有任何改变.是的,我确信我正在使用与SQLite浏览器相同的SQLite数据库运行Java查询.

SQLite jar的名称是sqlitejdbc-v056.jar.它基于SQLite 3.6.14.2.

以下是设置查询的Java代码:

String sql = "SELECT SKU_ATTR_VALUE.*, Product.ProductID " + 
             "FROM SKU_ATTR_VALUE " + 
             "     INNER JOIN SKU ON SKU_ATTR_VALUE.SkuID=SKU.SkuID " + 
             "     INNER JOIN Product ON SKU.ProductID=Product.ProductID " + 
             "WHERE Product.ProductID=?";
ps = conn.prepareStatement(sql);
ps.setInt(1, productID);
ResultSet rs = ps.executeQuery();
Run Code Online (Sandbox Code Playgroud)

sqlite jdbc

5
推荐指数
1
解决办法
2004
查看次数

标签 统计

firebug ×1

internet-explorer ×1

jdbc ×1

jquery ×1

json ×1

sqlite ×1