Ich versuche, eine delay()
oder setTimeout
innerhalb einer function()
, die $(this)
verwendet. Ich möchte $(this)
verwenden, da dieses Skript für jede Tabellenzeile ausgeführt wird, sodass es dieselbe Zeile als Ziel hat. Ich kann das erreichen, indem ich usw. benutze. Jedoch habe ich gerade Schwierigkeiten, $(this)
innerhalb einer Funktion innerhalb einer Funktion zu nennen.
Wenn ich verstehe, wo ich falsch liege, ist es die Tatsache, $(this)
würde versuchen, sich von setTimeout
zu bekommen? Wenn ja, wie kann ich es haben, damit ich das gleiche $ (das) verwenden kann, das ich benutzt habe?
-Code in Frage:
setTimeout(function() {
$(this).closest("td").next().find('.tabledit-save-button').click();
}, 2000)
Voll Code:
<script>
$(document).ready(function() {
$(document).ajaxComplete(function() {
$('.tabledit-view-mode').on('click', function(e){
$(this).closest("td").next().find('.tabledit-edit-button').click();
$(this).find(".tabledit-input").val("completed");
setTimeout(function() {
$(this).closest("td").next().find('.tabledit-save-button').click();
}, 2000)
});
});
});
</script>
Vielen Dank im Voraus.
Versuchen Variable mit '$ (this)' Wert und verwendet es in 'setTimeout' Funktion einstellen. Wie folgt: 'var that = $ (this); setTimeout (function() {that.closest ....' –
@YasharAliabasi danke, dass du richtig bist :-) – aussiedan
Wenn mein Beitrag helful war, dann melde bitte meinen Kommentar.Vielen Dank –