Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: А запущена ли функция? проверка
 
 автор: vadimka   (11.08.2009 в 13:03)   письмо автору
 
 

Здравствуйте!
Как проверить запущена ли функция?
Заранее спасибо!

  Ответить  
 
 автор: PAT   (11.08.2009 в 13:44)   письмо автору
 
   для: vadimka   (11.08.2009 в 13:03)
 

function ABCDEF ()
{
alert ('Функция ABCDEF запущена'); //после проверки удалите
...
}

  Ответить  
 
 автор: vadimka   (11.08.2009 в 13:51)   письмо автору
 
   для: PAT   (11.08.2009 в 13:44)
 

Я неправильно написал - алерт если не вызвана функция.
что-то вроде:
if (!ABCDEF )
    alert("НЕТ ФУНКЦИИ!");   

  Ответить  
 
 автор: PAT   (11.08.2009 в 14:24)   письмо автору
 
   для: vadimka   (11.08.2009 в 13:51)
 

Функция может быть вызвана. Или может быть не вызвана.
Третьего не дано.

Поэтому ПОЯВЛЕНИЕ любого из алертов ('вызвана' или 'не вызвана') или ОТСУТСТВИЕ такового алерта даст вам информацию о реальном состоянии.

Разумеется, вполне возможно предусмотреть какой-либо скриптовой механизм, который отследит - вызывается или не вызывается тот или иной участок кода (функция).
Но общего рецепта тут нет. И быть не может.

Ибо функция САМА ПО СЕБЕ не может заявить "меня не вызывали!". Функция хоть что-то заявить может только тогда, когда её вызовут. :-)

  Ответить  
 
 автор: vadimka   (11.08.2009 в 14:37)   письмо автору
 
   для: PAT   (11.08.2009 в 14:24)
 

спасибо за разъяснение, почему я так делаю, есть скрипт вот его часть:

echo "<select  id=$catalog[id_catalog] onchange=\"chg(this)\" style=\"display:none\" name=product$catalog[id_catalog] >";
         echo "<option value=0>Выберите курорт</option>";
        while($product = mysql_fetch_array($prd))
        {
          if($p == $product['id_product']) $selected = "selected";
          else $selected = "";
          echo "<option value=$product[id_product] $selected>$product[name]</option>";
         #unset ($p);
        }
        echo "</select>";

Это - второй выпадаюший список, который открывается, если, что-то выбрано в первом.
тут как id так и name - что-то динамическое, поэтому я подумал если прикрутить функцию
onchange=\"chg(this)\" 
и если ее нет, ругнутся, что поле не заполнено...
там есть так код:
document.getElementById(sel.options[sel.selectedIndex].value).style.display = "block";

может к нему можно прицепить проверку выбора, чего-то в селекте?



Или подругому, если сабмит, а данная функция не вызванна, тогда...

  Ответить  
 
 автор: PAT   (11.08.2009 в 15:03)   письмо автору
 
   для: vadimka   (11.08.2009 в 14:37)
 

Ваш PHP-код не нужен. НИКОМУ не нужен!
Угадывать - "а что в результате отобразит браузер?" - я лично не собираюсь.
И вряд ли кто это делать будет.

Хотите получить реальный совет - дайте тот HTML-код, который видит браузер.
Т.е. запустите файл в браузере, нажмите кнопку "Исходный код" и именно оттуда скопируйте и выложите здесь то, в чём у вас затруднения.

  Ответить  
 
 автор: vadimka   (11.08.2009 в 15:29)   письмо автору
 
   для: PAT   (11.08.2009 в 15:03)
 

Спасибо! вот что получили:
<select  id=1  style="display:none" name=product1 >
<option value=0>Выбор</option>
<option value=1 >1</option>
<option value=4 >4</option>
<option value=5 >5</option>
</select>
<select  id=3  style="display:none" name=product3 >
<option value=0>Выбор</option>
<option value=2 >2</option>
</select>
<select  id=6  style="display:none" name=product6 >
<option value=0>Выбор</option>
<option value=3 >3</option>
</select>

проверка, если предположим задействован product6:
if (theForm.product6.value < 1)
  {
    alert("Введите город !");
    theForm.product6.focus();
    return (false);
  }

то срабатывает. а как сделать динамически?

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования