Фильтр по:
  

  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: Admin, Cибиря4ка, Komoff, Diana  
Выпонение функции
Дата: Четверг, 19.07.2012, 14:21 |
nick1594
Майор
Группа: Проверенные
Сообщений: 91
Награды: 0
Репутация: 0
Статус: Offline


Подскажыте как сделать что бы функцыя send() выполнялась только тогда, когда выполнена функцыя ls()
Code

function ls() {
  $('#reasons').html('<hr><textarea id="reason" style="height:100px;width: 100%"></textarea>');
}
function send() {
  $("#prelaod").html('<img src="/ajax/load.gif" id="ajaxWait" />');
  var fstat = $('#ldF13').val();
  mes = $('#reason').val();
  if (fstat.substring(0, 1) == '3') {
   var message = 'Извините, [b]' + names + '[/b], но ' + $('#ldF1').val() + ' не был одобрен по причине: [br][b]Недооформлено[/b][br]' + mes;
  } else if (fstat.substring(0, 1) == '5') {
   var message = 'Извините, [b]' + names + '[/b], но ' + $('#ldF1').val() + ' не был одобрен по причине: [br][b]На доработке[/b][br]' + mes;
  } else if (fstat.substring(0, 1) == '6') {
   var message = 'Извините, [b]' + names + '[/b], но ' + $('#ldF1').val() + ' не был одобрен по причине: [br][b]Сомнительно[/b][br]' + mes;
  } else if (fstat.substring(0, 1) == '8') {
   var message = 'Извините, [b]' + names + '[/b], но ' + $('#ldF1').val() + ' не был одобрен по причине: [br][b]Повтор[/b][br]' + mes;
  }
  $.get("/index/14-0-0-1", function (pm) {
   ssid = $("input[name='ssid']", pm).val();
   $.post("/index", {
    s: names,
    subject: 'Статус раздачи ' + $('#ldF1').val(),
    message: message,
    ssid: ssid,
    a: 18
   },
   function (re) {
    if ($($(re).text()).text().indexOf("успешно") > -1) {
     $('#reasons, #prelaod').fadeOut(300);
    }
   });
  });
}

а то просто у меня в ссылке сохранить файл стоит функцыя sendd() а в ней та самая send(); что бы выполнять действие скрипта что выше,
у меня ж на даный момент получаеться что если я редактирую материал то пользователю отправляеться лс, а как писал выше нужно что бы отправлялось только если будет выполнена функцыя ls()
Code

  function sendd() {
   if ($('#suggEdit').val() == '') {
    $('#alertt').lightbox();
   } else {  
                         send();
    $('#doSmbBt').click();
   };
  }


 
Дата: Четверг, 19.07.2012, 17:05 |
likbezz
Аццкий кодер
Группа: Администраторы
Сообщений: 9093
Награды: 23
Репутация: 459
Статус: Unknown


nick1594,
Quote (nick1594, Чт, 19.07.2012, 14:21:33)
Подскажыте как сделать что бы функцыя send() выполнялась только тогда, когда выполнена функцыя ls()

Запускать вторую из первой, разве не очевидно? )
Можно с тайм-аутом, что бы наверняка.


 
Дата: Четверг, 19.07.2012, 17:11 |
nick1594
Майор
Группа: Проверенные
Сообщений: 91
Награды: 0
Репутация: 0
Статус: Offline


Запускать вторую из первой, разве не очевидно? )

как?

вот тут
при нажатии на сохранить материал функцыя send() будет срабатывать сама по себе, а нужно что бы только тогда когда запущена ls()
Code
function sendd() {  
    if ($('#suggEdit').val() == '') {  
     $('#alertt').lightbox();  
    } else {   
          send(); // вот она
     $('#doSmbBt').click();  
    };  
   }


 
Дата: Четверг, 19.07.2012, 17:22 |
likbezz
Аццкий кодер
Группа: Администраторы
Сообщений: 9093
Награды: 23
Репутация: 459
Статус: Unknown


nick1594,
Quote (nick1594, Чт, 19.07.2012, 17:11:42)
вот тут
при нажатии на сохранить материал функцыя send() будет срабатывать сама по себе, а нужно что бы только тогда когда запущена ls()

У тебя функция ls() ничего не делает, кроме того что добавляет поле.
Для чего она? Почему она отдельно если от неё зависят другие функции? Может проще объединить?
Если нет - тогда проверяй наличие объекта который вставляет функция ls() - ID reason - если его нет - выходи.

Делай проверки, всегда делай проверки - это поможет избежать ошибок и оптимизировать код.


 
Дата: Четверг, 19.07.2012, 17:29 |
nick1594
Майор
Группа: Проверенные
Сообщений: 91
Награды: 0
Репутация: 0
Статус: Offline


У тебя функция ls() ничего не делает, кроме того что добавляет поле.


ну правильно добавляет поле в которо я ввожу текст который будет отправлен пользователю в лс
вот тут

Code
var message = 'Извините, [b]' + names + '[/b], но ' + $('#ldF1').val() + ' не был одобрен по причине: [br][b]Повтор[/b][br]' + mes // ВОТ ОНО ТУТ БУДЕТ;


 
Дата: Четверг, 19.07.2012, 17:36 |
likbezz
Аццкий кодер
Группа: Администраторы
Сообщений: 9093
Награды: 23
Репутация: 459
Статус: Unknown


nick1594,
Quote (nick1594, Чт, 19.07.2012, 17:29:09)
ну правильно добавляет поле в которо я ввожу текст который будет отправлен пользователю в лс

Вопрос:
Зачем это вынесено в отдельную функцию?

Решение уже дано выше - проверяй наличие поля перед выполнением следующей функции.


 
Дата: Четверг, 19.07.2012, 17:39 |
nick1594
Майор
Группа: Проверенные
Сообщений: 91
Награды: 0
Репутация: 0
Статус: Offline


Зачем это вынесено в отдельную функцию?

потому что та функцыя выполняеться если выбран один из пунктов селектора
Code
<option value="5" onclick="ls();">На доработке</option>


 
Дата: Четверг, 19.07.2012, 17:48 |
likbezz
Аццкий кодер
Группа: Администраторы
Сообщений: 9093
Награды: 23
Репутация: 459
Статус: Unknown


nick1594, Проверяй наличие поля перед выполнением следующей функции.

Quote (nick1594, Чт, 19.07.2012, 17:39:44)
потому что та функцыя выполняеться если выбран один из пунктов селектора




 
Дата: Четверг, 19.07.2012, 17:50 |
nick1594
Майор
Группа: Проверенные
Сообщений: 91
Награды: 0
Репутация: 0
Статус: Offline


Code
function sendd() {  
    if ($('#suggEdit').val() == '') {  
     $('#alertt').lightbox();  
    } else {   
      if ($('#reasons').html() != ' ')send(); }
     $('#doSmbBt').click();  
    };  
   }

типа так?


 
Дата: Четверг, 19.07.2012, 17:53 |
likbezz
Аццкий кодер
Группа: Администраторы
Сообщений: 9093
Награды: 23
Репутация: 459
Статус: Unknown


nick1594,
Quote (nick1594, Чт, 19.07.2012, 17:50:55)
типа так?

Нет, не так, но уже лучше.


 
Дата: Четверг, 19.07.2012, 17:54 |
nick1594
Майор
Группа: Проверенные
Сообщений: 91
Награды: 0
Репутация: 0
Статус: Offline


Нет, не так

хм... ну тогда хз как проверить поле, с таки не сталкивался еще


 
Дата: Четверг, 19.07.2012, 18:07 |
likbezz
Аццкий кодер
Группа: Администраторы
Сообщений: 9093
Награды: 23
Репутация: 459
Статус: Unknown


nick1594,
Quote (nick1594, Чт, 19.07.2012, 17:54:31)
хм... ну тогда хз как проверить поле

А зачем проверять поле?
Нужно всего лишь проверить НАЛИЧИЕ объекта на странице.
Code
if ($('#reasons').size()){...}


 
Дата: Четверг, 19.07.2012, 18:08 |
nick1594
Майор
Группа: Проверенные
Сообщений: 91
Награды: 0
Репутация: 0
Статус: Offline


likbezz, неужели:D
Code
if ($('#reasons').find('textarea').size()>0) send()


 
Дата: Четверг, 19.07.2012, 18:18 |
likbezz
Аццкий кодер
Группа: Администраторы
Сообщений: 9093
Награды: 23
Репутация: 459
Статус: Unknown


nick1594,
Quote (nick1594, Чт, 19.07.2012, 18:08:00)
if ($('#reasons').find('textarea').size()>0) send()

Это типа мы не ищем легких путей?
Тогда уж вот так:
Code
$(document).each(function(i){
   if($(this).attr('id')=='reasons'){
    if($(this).find('textarea')){
     if($(this).find('textarea').attr('id')=='reasons'){
      if($(this).find('textarea').size()>0){
       send();
      }
     }
    }
   }
});


 
Дата: Четверг, 19.07.2012, 18:20 |
nick1594
Майор
Группа: Проверенные
Сообщений: 91
Награды: 0
Репутация: 0
Статус: Offline


Тогда уж вот так:

surprised это что такое??


 
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:


Мобильная версия