JSFiddle本身不起作用;无法找到元素?

时间:2016-04-02 16:48:49

标签: javascript jquery jsfiddle

我有一个超级简单的小提琴...但当我做一个检查元素时,$("#cart table")并且坦率地$("#add")$("#remove")$("#cart")都会返回null,即使这些物品在页面上......我做错了什么?

(因此我的行$("#cart table").find("tr").length()突破了什么?) concurrently

4 个答案:

答案 0 :(得分:2)

基本上, System.out.println(new StringBuilder("1/2+1/2=").append(0).append(0)); 是属性,而不是函数,

length

DEMO

您的完整代码将是,

$("#cart table").find("tr").length

答案 1 :(得分:1)

1)你没有在你的jsFiddle中加载jQuery

2)这不起作用

$("#cart table").find("tr").length

...因为最初点击添加按钮时没有可用的表行。

3)当你有行时,它是$("#cart table").find("tr").length()

我倾向于这样写。它获取行,如果有一些用途.length,则为length

1

DEMO

答案 2 :(得分:0)

您已使用$(document).on("click", "#add", function(e) { e.preventDefault(); var next_item_number = parseInt($("#cart table").find("tr").length) + 1 var item = '<tr>' + '<td>Item #' + next_item_number + '</td>' + '</tr>' $("#cart table").append(item) }); 作为函数,但它是一个属性。使用length代替length

length()

<强> UPDATED FIDDLE

答案 3 :(得分:0)

var $rows = $("#cart table").find("tr");
var next_item_number = parseInt($rows.length || 1, 10);

Uncaught TypeError: $(...).find(...).length is not a function 是一个数字属性,而不是函数。用以下代码替换您的代码:

length

它会起作用。注意:您可能希望向parseInt($("#cart table").find("tr").length) 添加显式的10基数参数。