Skip to content

Commit 7b25b02

Browse files
committed
refactor(defaultTheme): refine enableNonRefreshDelete()
1 parent 7c86394 commit 7b25b02

File tree

2 files changed

+10
-19
lines changed

2 files changed

+10
-19
lines changed

src/tpl/defaultTheme/frontend/index.html

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -78,12 +78,12 @@ <h3>{{.Trans.UploadLabel}}</h3>
7878

7979
{{if .CanDelete}}
8080
<script type="text/javascript">
81-
function confirmDelete(form) {
81+
function confirmDelete(e) {
82+
var form = e.target;
8283
var name = form.name.value;
8384
var proceed = confirm('{{.Trans.DeleteConfirm}}\n' + name);
8485
if (!proceed) {
85-
var e = event || window.event;
86-
if (e && !('defaultPrevented' in e)) e.defaultPrevented = true;
86+
e.preventDefault();
8787
}
8888
return proceed;
8989
}
@@ -124,7 +124,7 @@ <h3>{{.Trans.UploadLabel}}</h3>
124124
<span class="field size">{{.DisplaySize}}</span>
125125
<span class="field time">{{.DisplayTime}}</span>
126126
</a>
127-
{{if and (not $isSimple) .DeleteUrl}}<form class="delete" method="post" action="{{$SubItemPrefix}}?delete" onsubmit="return confirmDelete(this)"><input type="hidden" name="name" value="{{.DeleteUrl}}"/><input type="hidden" name="contextquerystring" value="{{$contextQueryString}}"/><button type="submit">x</button></form>{{end}}
127+
{{if and (not $isSimple) .DeleteUrl}}<form class="delete" method="post" action="{{$SubItemPrefix}}?delete" onsubmit="return confirmDelete(event)"><input type="hidden" name="name" value="{{.DeleteUrl}}"/><input type="hidden" name="contextquerystring" value="{{$contextQueryString}}"/><button type="submit">x</button></form>{{end}}
128128
</li>
129129
{{end}}
130130
</ul>

src/tpl/defaultTheme/frontend/index.js

Lines changed: 6 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -985,32 +985,23 @@
985985
if (!itemList.classList.contains('has-deletable')) return;
986986

987987
itemList.addEventListener('submit', function (e) {
988-
if (e.defaultPrevented) {
989-
return;
990-
}
988+
if (e.defaultPrevented) return;
991989

992990
var form = e.target;
993991

994992
function onLoad() {
995993
var status = this.status;
996-
if (status >= 200 && status <= 299) {
997-
var elItem = form;
998-
while (elItem && elItem.nodeName !== 'LI') {
999-
elItem = elItem.parentElement;
1000-
}
1001-
if (!elItem) {
1002-
return;
1003-
}
1004-
var elItemParent = elItem.parentNode;
1005-
elItemParent && elItemParent.removeChild(elItem);
994+
if (status >= 200 && status < 300) {
995+
var elItem = form.closest('li');
996+
elItem.remove();
1006997
} else {
1007998
logError('delete failed: ' + status + ' ' + this.statusText);
1008999
}
10091000
}
10101001

10111002
var params = '';
10121003
var els = Array.prototype.slice.call(form.elements);
1013-
for (var i = 0, len = els.length; i < len; i++) {
1004+
for (var i = 0; i < els.length; i++) {
10141005
if (!els[i].name) {
10151006
continue
10161007
}
@@ -1028,7 +1019,7 @@
10281019
xhr.send(params);
10291020
e.preventDefault();
10301021
return false;
1031-
}, false);
1022+
});
10321023
}
10331024

10341025
enableFilter();

0 commit comments

Comments
 (0)