2017-07-05 3 views
1

manuell erstellen Ich habe Funktion in JS, die das "$ this" bekommen.

Ich möchte diese Funktion an einem anderen Ort verwenden. Kann ich "$ this" manuell erstellen?

finden Sie den Code:

function print_results(element) { 
    var startRow = element.attr("startRow"); 
    var maxRes  = element.attr("maxRes"); 
} 


$(document).on("click", ".moreItins-btn", function(){ 
    print_results($(this)); 
}); 

$('#search-form').on('submit', function(e) { 
$(this) = .... 
print_results(HERE I WANT TO SENT THE SAME $THIS AS IN THE ABOVE CODE); 
} 
+0

'this' ist nur eine Referenz auf das Element, das das Ereignis verursacht hat. Wenn Sie das '.moreItins-btn'-Element erhalten möchten, verwenden Sie' $ ('. MoreItins-btn'); '. Wenn Sie mehrere Elemente mit dieser Klasse haben, müssen Sie einen Mechanismus entwickeln, um zu bestimmen, welche Sie benötigen - z. B. eine Klasse für das Element umschalten und dann nach dieser Klasse auswählen –

+0

@RoryMcCrossan - oh, ich dachte, das ist eine Art Array ... Danke – Roi

Antwort

0

Sie einfach die Klasse

wie

$('#search-form').on('submit', function(e) { 
var moreItinsObject = $('.moreItins-btn'); 
print_results(HERE I WANT TO SENT THE SAME $THIS AS IN THE ABOVE CODE); 
//here moreItinsObject is same as that $this 
} 

ich Ding wählen kann, wird es Ihnen helfen.

Verwandte Themen