问题描述
1.就是我想要删除网盘的重复的文件,重复文件的格式就像要XXX(1).XXX的样子
2.然后我的思路就是把这些文件找出来,然后利用循环一次性把他们的选择框勾选
3.然后就直接删除
问题
解决不了的就是直接调用dd标签上面的click事件倒是可以但是,但是不支持利用循环选择多个,选择了下一个上一个又没了
然后我又想可能那个删除按钮是根据那个dd的class来判断是否勾选的,又给加上了对应的css影视,但是好像还是不行。
代码
var $fileNames = $("div.file-name div.text a");
var isRepeat = /\((.+?)\)/;
var repeatFilesIndex = [];
var $optionBoxs = $("dd.g-clearfix");
// 找到重复文件
for(var i = 0; i < $fileNames.length; i++){
var $thisFile = $($fileNames[i]);
var title = $thisFile.attr("title");
// 判断重名文件并记录索引
if(title.search(isRepeat) != -1){
repeatFilesIndex.push(i);
console.log(title);
}
}
// 勾选重名文件
for(var i = 0; i < repeatFilesIndex.length; i++){
var thisOptionIndex = repeatFilesIndex[i];
var $thisOptionBox = $($optionBoxs[thisOptionIndex]);
// 勾选该选项
$thisOptionBox.addClass("obcPb8q");
}
// 触发删除事件
$("div.ayqzNa a[title='删除']").click();
所以我想知道的就是怎么才能选择多个文件### 问题描述
问题出现的环境背景及自己尝试过哪些方法
相关代码
// 请把代码文本粘贴到下方(请勿用图片代替代码)
没仔细研究你的代码。网页上进行批量操作,通常是检测形如 <input type = "checkbox" /> 的标签——亦即复选框的 "checked" 属性,为真则表示被选中,然后获取与这些被选中标签相关联的数据,写入表单、提交。
通过检测 class 名来判断复选框是否选中是非常不规范的行为,百度的前端应该不会这么做。
所以理论上你应该先用 $ 找到各文件名对应的复选框,然后逐个执行
然后触发批量删除按钮的点击事件。