javascript - 请语法解释

标签 javascript jquery

我试图理解下面两行不同的代码。我的 javascript 很弱,试图用 jquery 改进它 (hmmmm)

我正在尝试使用 http://dragsort.codeplex.com/ 中的拖动排序插件具体来说,我正在使用 http://dragsort.codeplex.com/SourceControl/changeset/view/74794#1025059例子。

我现在已经到了使用这种方法的阶段

var serialStr = "";
$("#list1 li").each(function(i, elm) { 
    serialStr = (i > 0 ? "|" : "") + $(elm).children().html(); 
});

示例如下。

var serialStr = new Array();
$("#list1 li").each(function(i, elm) { 
    serialStr[] = = $(elm).attr("itemId");  
}); 

我采用第一种方法的原因是我正在测试所有内容以及它们在 HTML 示例中的内容。我现在正在尝试保存状态,所以我转到了 php 示例。

所以我的问题是这里不同线路的主要区别是什么?我对第一行的理解是,它选择了 list1 上 li 标记内的每个子元素,我并没有真正得到 (i > 0 ? "|": "") 位。

在第二个片段中,据我所知,它选择了 list1 li 中带有 itemID 受让人的每个属性?

最佳答案

serialStr[] = (i > 0 ? "|": "") +$(elm).children().html() 是一个简写的 if-clausule。它与以下内容相同:

if(i > 0) {
 serialStr[] = "|" +$(elm).children().html();
} else {
 serialStr[] = "" +$(elm).children().html();
}

关于javascript - 请语法解释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3758741/

相关文章:

javascript - Web 抓取需要使用/Javascript 警报进行身份验证的内部站点

javascript - 如何使用嵌套循环绘制 4 个顶点?

jquery - 淡入 SVG 背景图像

javascript - 使用 JavaScript 解析 JSON 树

javascript - 使用 Swift 在 HTML 中单击一个按钮

javascript - 使用我的 "DragEnter"和 "Dreagleave"函数在 Firefox 浏览器上进行 Knockout.js 拖放操作时出现问题

javascript - 如何在模态中显示v-for中点击元素的vue数据

javascript - 如何使用 Hightchart-ng 制作 Highcharts 半圆 donut chart

javascript - 防止提交空白输入和文本区域

jquery - 默认情况下,将 form-control 和 input-sm css 应用于页面中的所有输入/选择控件