以下似乎无法正常运作。
success: function(results)
{
var $results = $(results);
$results.find('a[href$=".exe"]').each(function(){
if (FileExists(this.href) == false) {
$(this).parent().remove();
}
});
$("#divSearchResults").empty().append($results);
}
它应该从结果中删除任何.exe链接,然后将修改后的结果附加到屏幕。
编辑1:这是FileExists函数的脚本:
function FileExists(path) {
var fso = new ActiveXObject("Scripting.FileSystemObject");
FileExist = fso.FileExists(path);
if (FileExist == true) {
return true
} else {
return false
}
}
编辑2:结果包含以下内容:
<div><a href="link1.xls">link 1</a></div>
<div><a href="link2.exe">link 2</a></div>
<div><a href="link3.doc">link 3</a></div>
<div><a href="link4.aspx">link 4</a></div>
答案 0 :(得分:1)
经过一些测试我认为问题出在$(this).parent().remove()
和你的结果上,如果你看this fiddle对this fiddle,第一个不起作用,但第二个有效在我们将其包裹在一个范围内之后,只需这样结果$ result就不会变空。
答案 1 :(得分:0)
有点预感,FileExists
使用AJAX调用?在这种情况下,异步an不会返回任何可靠的东西,因为它退出了应用程序的当前流程。