Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Jquery добавить в функцию переменную (https://javascript.ru/forum/misc/55186-jquery-dobavit-v-funkciyu-peremennuyu.html)

_Eldar_ 16.04.2015 19:35

Jquery добавить в функцию переменную
 
Здравствуйте, можете подсказать как в функцию pay()
function pay() 
{var check="Y";
	$.ajax({
					type: "POST",
					url: "/user/set.php",
					data: {id:<?=$IDD?>,auto:check,string:'sstring'},
					success: function(html)
          {
					if(html=="Y") {$('#autocheck_<?=$IDD?>').attr("checked",true);	}
					 }
					});
}

вместо <?=$IDD?> в функцию pay добавить переменную, чтобы получилось pay(ID) ?
function pay(ID) 
{var check="Y";
	$.ajax({
					type: "POST",
					url: "/user/set.php",
					data: {id:ID,auto:check,string:'sstring'},
					success: function(html)
          {
					if(html=="Y") {$('#autocheck_'+ID).attr("checked",true);	}
					 }
					});
}

как правильно использовать переменную в 6 и 9 строках???

laimas 16.04.2015 19:45

<?=$IDD?> - это вывод на стороне сервера, причем конкретного значения. И что он будет подставлять в функцию? У вас клиент что одно и тоже значение постоянно отправляет серверу?

_Eldar_ 16.04.2015 19:53

я хочу использовать функцию pay(ID) , ID будет подставляться при использовании функции как pay(<?=$IDD?>).

laimas 16.04.2015 20:02

Вы на вопрос ответьте - у вас что это ID одно на странице?
Если да, то какой смысл, если оно и так в положенных местах проставляется сразу?
Если же элементов много, и ID у них различны, то
data: {id:<?=$IDD?>,auto:check,string:'sstring'}
и
$('#autocheck_<?=$IDD?>').attr("checked",true)
в коде вообще быть не должно, этот JS-код сервер вообще не должен выводить, а проставлять ID только набору элементов, и обработчик должен быть иной.

Результирующий html-код покажите. Что-то не то у вас.

_Eldar_ 16.04.2015 20:13

pay() функция работает с одним $IDD на странице , я хочу эту функцию использовать когда много разных $IDD элементов и вызывать как pay(<?=$IDD?>)

_Eldar_ 16.04.2015 20:19

или только другой обработчик нужен- когда ID элементов много?

laimas 16.04.2015 20:23

я хочу эту функцию использовать когда много разных $IDD элементов и вызывать как pay(<?=$IDD?>)

Ну наконец-то дождались нужного. А теперь думаем - если на странице будет много разных ID, то каким образом север может управлять этим pay(<?=$IDD?>)? Понимаете что в этом случае будет?

Я же вам писал выше - если много уникальных autocheck_ID, то код

function pay()
{var check="Y";
$.ajax({
и т.д..

сервер вообще не должен выводить, этот код должен быть уже прописан в подключаемом файле. При этом функции pay() может и не быть, достаточно в обработчике, который будет обрабатывать события элементов autocheck_ID прописать $.ajax отправку данных, а их ID можно будет получить в обработчике, например так:
var id = this.id.split("_").pop();


Часовой пояс GMT +3, время: 01:48.