user function
Почему так работает
function button_upload(){ $(".buttonUpload").click(function(){ $.ajax({ url: "/userpages/uploadContent.php", type: "GET", cache:true, data: {data:$(this).find('input').val()}, success: function(data){ $("#dataUpload").html(data); } }); });}А так нет function content_upload(){ $.ajax({ url: "/userpages/uploadContent.php", type: "GET", cache:true, data: {data:$(this).find('input').val()}, success: function(data){ $("#dataUpload").html(data); } }); } function button_upload(){ $(".buttonUpload").click(function(){ content_upload(); });} |
две функции под одним именем. вы переопределяете свою функцию
|
но почему же под одним именем, под разными именами, это должна быть функция включающая вложенную функцию, как же сделать?Может как то button_upload должна принимать другую функцию, просветите?
Мне приходит ответ от php, значит ajax срабатывает Notice: Undefined index: data in /home/imediasun/data/www/pinokio.in.ua/userpages/uploadContent.php on line 4 но GET не проходит |
сори.. да.. под конец дня туплю жестко..
а в консоль валится что? или нет? function button_upload(){ console.log(1); $(".buttonUpload").click(function(){ console.log(2); content_upload(); });} |
Цитата:
|
<br />
<b>Notice</b>: Undefined index: data in <b>/home/imediasun/data/www/pinokio.in.ua/userpages/uploadContent.php</b> on line <b>4</b><br /> |
в хроме (есть и в других браузерах, но расскажу на примере хрома), есть фаербаг (f12 для вызова). там есть вкладка Network. вот зайдите туда.
в низу будет фильтр: all, documents, stylesheets, images, ... нажмите XRH и обновите страницу. там должен придти статус ответа. 200 - это успешный ответ |
но если свести функции как в начале написано то работает
|
может то что вложенная функция использует this?
|
кстати да.. во втором случае this будет наверное видится как window
|
сори в консоле следующее
1.my_account (строка 400) 2.my_pinokio (строка 402) |
а как вместо this написать кликнутый элемент
|
список статусов зашифрованных:
http://ru.wikipedia.org/wiki/%D0%A1%...%B8%D1%8F_HTTP на счет this. в функцию его передайте:content_upload(this); а там уже принимайте: function button_upload(obj){ ну и вместо this пишите obj: data: {data:$(obj).find('input').val()}, |
если я вас правильно понял то написал вот так
function content_upload(this){ $.ajax({ url: "/userpages/uploadContent.php", type: "GET", cache:true, obj: data: {data:$(obj).find('input').val()}, success: function(data){ $("#dataUpload").html(data); $("#dataUpload").css('display','none'); $("#dataUpload").fadeIn("slow"); var height_right_side = $('#dataUpload').height(); $('#dataUpload').css('height',height_right_side); $('#my_pinokio_main_area').css('height',height_right_side+40); $('#my_account_area').css('height',height_right_side+20); } }); } function button_upload(obj){ console.log(1); $(".buttonUpload").click(function(){ console.log(2); content_upload() });} В консоли вот это SyntaxError: missing formal parameter [Прерывать на этой ошибке] function content_upload(this){ my_pinokio (строка 380, столбец 24) |
нет, вот так (по старому примеру):
function content_upload(obj){ $.ajax({ url: "/userpages/uploadContent.php", type: "GET", cache:true, data: {data:$(obj).find('input').val()}, success: function(data){ $("#dataUpload").html(data); } }); } function button_upload(){ $(".buttonUpload").click(function(){ content_upload(this); });} |
Спасибо большое заработало
|
пришлите свой код еще раз, я гляну.. ему кавычки не нравятся
|
Часовой пояс GMT +3, время: 18:44. |