首先,我为我的英语道歉; - )
我有<TABLE>
,每个<TR><TD>
是指向文件的指针。我添加了一个链接来调用将删除所选文件的PHP模块。我选择使用jQUery UI对话框来确认删除,但是我在拦截被点击的元素以将HREF值传递给将调用PHP模块的document.location.href
时遇到了麻烦。
这只是HTML的一小部分(只有一行,每个<TR>
的HREF值不同):
<tr class="riga">
<td>
<?php echo $xName; ?>
</td>
<td class="TD20">
<span class="file-remove">
<a href=<?php echo "del.php?&op=delfile&i=$xId&f=$xFsname"; ?> >
<span class="ui-icon ui-icon-closethick" title="Delete file"></span>
</a>
</span>
</td>
</tr>
...
<div id="confirm-delete-file" title="Conferma rimozione FILE">
<p><span class="ui-icon ui-icon-alert" style="float: left; margin: 0 7px 20px 0;"></span>Confermi la rimozione definitiva del file?</p>
</div>
这是jQuery函数
$(function() {
$( "#confirm-delete-file" ).dialog({
resizable: false,
height:140,
modal: true,
autoOpen:false,
buttons: {
"Elimina": function() {
$( this ).dialog( "close" );
window.location.href = document.activeElement.href;
},
"Annulla": function() {
$( this ).dialog( "close" );
return false;
}
}
});
$(".file-remove a").click(function(e) {
e.preventDefault();
$('#confirm-delete-file').dialog('open');
});
});
使用Mozilla Firefox可以使用,但如果使用Chrome或Safari则不行。我想document.activeElement.href不是检索被点击的href属性的正确方法...
有什么想法吗?
谢谢!
P.S。 jQuery UI 1.10.2和jQuery 1.8.3
答案 0 :(得分:0)
如果我理解正确,那么问题在于访问点击锚标记的href
。如果是,则声明一个可以保留href
点击a
标记的全局变量,然后在 Elimina 函数中使用它。
var urlToHit = "";
$( "#confirm-delete-file" ).dialog({
resizable: false,
height:140,
modal: true,
autoOpen:false,
buttons: {
"Elimina": function() {
$( this ).dialog( "close" );
alert(urlToHit);
window.location.href = urlToHit;
},
"Annulla": function() {
$( this ).dialog( "close" );
return false;
}
}
});
$(".file-remove a").click(function(e) {
e.preventDefault();
urlToHit = $(this).attr("href");
$('#confirm-delete-file').dialog('open');
});
此处urlToHit
可在您的功能中访问,您可以在没有任何问题的情况下重定向到该位置。