Witam serdecznie. Mam oto taki kod wykonywany poprzez użycie określonego input id:
$(document).on('click', '#button-sort', function() {
var filterSelect = $("#filterSelect").val();
var searchOption = $("#searchOption").val();
var searchPhrase = $("#searchPhrase").val();
var params1 = $(this).attr("sort");
var params2 = $(this).attr("order");
var url = "{{restUrl}}cases/caselistsorted/"+filterSelect+"/"+searchOption+"/"+searchPhrase+"/"+params1+"/"+params2;
$.ajax({
type: 'GET',
url: url,
data: null,
dataType: 'json',
success: function (data) {
if (data != null) {
console.log(url);
$(".case-list").html(data["code"]);
}
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
console.log("Error: " + textStatus + " " + url);
}
});
});
I chciałbym podłączyć go pod kilka eventów klikniecia, wybrania opcji z selecta i robię to w ten sposób:
function sendParam(){
var filterSelect = $("#filterSelect").val();
var searchOption = $("#searchOption").val();
var searchPhrase = $("#searchPhrase").val();
var params1 = $(this).attr("sort");
var params2 = $(this).attr("order");
var url = "{{restUrl}}cases/caselistsorted/"+filterSelect+"/"+searchOption+"/"+searchPhrase+"/"+params1+"/"+params2;
$.ajax({
type: 'GET',
url: url,
data: null,
dataType: 'json',
success: function (data) {
if (data != null) {
console.log(url);
$(".case-list").html(data["code"]);
}
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
console.log("Error: " + textStatus + " " + url);
}
});
$(document).on('click', '#button-sort', function() {
sendParam();
});
$(function() {
$('#filterSelect').change(function () {
sendParam();
});
Problem zaczyna się tutaj:
var params1 = $(this).attr("sort");
var params2 = $(this).attr("order");
Ponieważ gdy zamienię to na:
var params1 = $('#button-sort').attr("sort");
var params2 = $('#button-sort').attr("order");
Pobiera cały czas ten sam parametr dla sort i order a każdy input ma inny. Wina leży po tej stronie że mam około 10 input id="#button-sort" tyle że każdy ma inny parametr sort i order, który jest wysyłany po kliknięciu. Wszystko działa dobrze gdy używam pierwszej opcji ale jak chce podpiąć działanie pod kilka funkcji jest już problem z prawidłowym pobraniem tych paramterów - pobiera cały czas tylko z pierwszego input id parametry sort i order. Jak mogę rozwiązać ten problem i co radzicie? Pozdrawiam
PS to moje inputy:
<input type="image" src="view/img/arrowup.png" sort="createDate" order="asc" id="button-sort" onmouseover="this.src = 'view/img/arrow-change-up.png'" onmouseout="this.src = 'view/img/arrowup.png'"/>
<input type="image" src="view/img/arrowdown.png" sort="createDate" order="desc" id="button-sort" onmouseover="this.src = 'view/img/arrow-change-down.png'" onmouseout="this.src = 'view/img/arrowdown.png'" />