Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Два одинаковых скрипта JavaScript на одной странице а работает только один  (Прочитано 10771 раз)
0 Пользователей и 1 Гость смотрят эту тему.
andrystepa
Помогающий

ru
Offline Offline

« : 26-08-2009 07:17 » 

С JavaScript я почти не знаком. Но мне понадобилось вставить в форму на веб странице поле ввода даты, причем полей два. Дата должна вводиться только в определенном формате: дд/мм/гггг. Страницу делал на PHP, а для ввода даты использовал найденный в Инете скрипт, написанный на JavaScript. Вот код страницы:
Код:
<script language="JavaScript" src="calendar_us.js"></script>
<link rel="stylesheet" href="calendar.css">

</head>
<body>
<?php
include "TcLib.php";
session_start();

$conn connectDB($_SESSION[&#39;userlogin&#39;], $_SESSION[&#39;passw&#39;]);
if (!$conn) {
print "Поздравляем, вы подключились к базе данных!\n";
}
switch($tableName) {
case "Prj":
if ( empty($Pname) ) {
editPrj($keyVal);
} else {
UpdPrj();
Ret2main();
}
break;
// case "Units":
// $sql = "SELECT * FROM $table;";
// break;
case "User":
if ( empty($Uname) ) {
editUsers();
} else {
UpdUser();
Ret2main();
}
break;
case "Tasks":
if ( empty($Tdeskr) ) {
editTask($keyVal);
} else {
UpdTask();
Ret2main();
}
default:
print $tableName;
print " -         Такой таблицы нет!";
print &#39;<br>&#39;;
}

function 
editPrj($keyVal) {
global $tableName$Pname$startd$stopd;
setEncoding(&#39;cp1251&#39;);
$sql "SELECT * FROM Prj WHERE Prj_Id = $keyVal;";
$result getquery($sql);
if ($result) {
$entry mysql_fetch_assoc($result);
$Pr_name $entry[&#39;Prj_name&#39;];
$startd explode("-"$entry[&#39;Start_D&#39;]);
$strd="$startd[1]/$startd[2]/$startd[0]";
$stopd explode("-"$entry[&#39;Stop_D&#39;]);
$stpd="$stopd[1]/$stopd[2]/$stopd[0]";
print <<<HERE
<br>
<h3><div align="center"><font size="+1" color="#0000FF" face="Comic Sans MS">Введите название проекта</font></div></h3>
<div align="center"><form name="prinput" method="post">
<input type="text" name="Pname" value="
$Pr_name">
<br>
<h3><div align="center"><font size="+1" color="#0000FF" face="Comic Sans MS">Введите дату начала проекта в виде:</font></div></h3>
<h3><div align="center"><font size="+1" color="#0000FF" face="Comic Sans MS">Год/месяц/день (цифры разделенные прямым слешем)</font></div></h3>
<div align="center"> <input type="text" name="startd" value="
$strd" />
<script language="JavaScript">
new tcal ({
// form name
&#39;formname&#39;: &#39;prinput&#39;,
// input name
&#39;controlname&#39;: &#39;startd&#39;
});

</script>
</form>
<br>
<h3><div align="center"><font size="+1" color="#0000FF" face="Comic Sans MS">Введите дату завершения проекта в виде:</font></div></h3>
<h3><div align="center"><font size="+1" color="#0000FF" face="Comic Sans MS">Год/месяц/день (цифры разделенные прямым слешем)</font></div></h3>
<input type="text" name="stopd" value="
$stpd" />
<script language="JavaScript">
new tcal ({
// form name
&#39;formname&#39;: &#39;prinput&#39;,
// input name
&#39;controlname&#39;: &#39;stopd&#39;
});

</script>
<br>
<input type="hidden" name="tableName" value="
$tableName">
<br>
<input type="submit" value = "Сохранить">
</form></div>
<br>
HERE;
}
else { print "Запрос $sql не удался!"; }
}

Код страницы привел не весь - слишком длинно было бы. Проблема в теле функции editPrj($keyVal). Там есть два скрипта для вывода календарика при добавлении (редактировании) даты. Проблема в том, что первый скрипт работает - то есть при клике на иконке календаря календарик открывается, и выбранная дата добавляется в текстовое поле. А вот второй скрипт не работает - то есть иконка календаря не активна. Синтаксис у обоих скриптов вроде одинаковый. Подскажите пожалуйста, почему второй скрипт не работает?
Записан
Sla
Команда клуба

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #1 : 26-08-2009 07:22 » 

на фига нам php скрипты
давай показывай js скрипты
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Sla
Команда клуба

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #2 : 26-08-2009 07:23 » 

и... покажи html код страницы
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
andrystepa
Помогающий

ru
Offline Offline

« Ответ #3 : 26-08-2009 09:40 » new

Благодарю всех! Уже не нужно - сам заметил. Ошибка была именно в том кусочке PHP кода, который я привел. И ни html код (собственно его и нету - он ведь создается приведенным мною кодом php!), ни код JavaScript не нужен. Дело в том, что завершающий тег </form> стоит перед тем местом, где стоит второе текстовое поле для ввода даты, да и собственно сам скрипт. Поставил на место и все заработало.
« Последнее редактирование: 26-08-2009 09:42 от andrystepa » Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines