Skip to content

Commit 292e4bc

Browse files
committed
refactor(defaultTheme): refine enableNonRefreshDelete()
1 parent d6c8397 commit 292e4bc

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
@@ -979,32 +979,23 @@
979979
if (!itemList.classList.contains('has-deletable')) return;
980980

981981
itemList.addEventListener('submit', function (e) {
982-
if (e.defaultPrevented) {
983-
return;
984-
}
982+
if (e.defaultPrevented) return;
985983

986984
var form = e.target;
987985

988986
function onLoad() {
989987
var status = this.status;
990-
if (status >= 200 && status <= 299) {
991-
var elItem = form;
992-
while (elItem && elItem.nodeName !== 'LI') {
993-
elItem = elItem.parentElement;
994-
}
995-
if (!elItem) {
996-
return;
997-
}
998-
var elItemParent = elItem.parentNode;
999-
elItemParent && elItemParent.removeChild(elItem);
988+
if (status >= 200 && status < 300) {
989+
var elItem = form.closest('li');
990+
elItem.remove();
1000991
} else {
1001992
logError('delete failed: ' + status + ' ' + this.statusText);
1002993
}
1003994
}
1004995

1005996
var params = '';
1006997
var els = Array.prototype.slice.call(form.elements);
1007-
for (var i = 0, len = els.length; i < len; i++) {
998+
for (var i = 0; i < els.length; i++) {
1008999
if (!els[i].name) {
10091000
continue
10101001
}
@@ -1022,7 +1013,7 @@
10221013
xhr.send(params);
10231014
e.preventDefault();
10241015
return false;
1025-
}, false);
1016+
});
10261017
}
10271018

10281019
enableFilter();

0 commit comments

Comments
 (0)