PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Страниц (10): « 1 2 3 4 [5] 6 7 8 9 ... » В конец
Найдено сообщений: 143
demot
Отправлено: 20 Мая, 2011 - 15:32:25 • Тема: Динамический select • Форум: JavaScript & VBScript
Ответов: 7 Просмотров: 4436
Viper пишет: demot воспользуйтесь jQuery.
Да, спасибо, как раз попробовал уже. И все сразу заработало
правда появился другой вопрос.
почему с таким кодом все отрабатывает отлично
CODE (
javascript ):
скопировать код в буфер обмена
$( "#list" ) .change ( function ( ) {
$( "#spec" ) .load ( "dinamic_list.php" , { list: $( "#list option:selected" ) .val ( ) } ) ;
} ) ;
$( document) .ready ( function ( ) {
$( "#spec" ) .load ( "dinamic_list.php" , { list: $( "#list option:selected" ) .val ( ) } ) ;
} ) ;
а с таким нет, т.е. ready отрабатывает, а change не работает
CODE (
javascript ):
скопировать код в буфер обмена
function loadList( ) {
$( "#spec" ) .load ( "dinamic_list.php" , { list: $( "#list option:selected" ) .val ( ) }
) } ;
$( document) .ready ( loadList( ) ) ;
$( "#list" ) .change ( loadList( ) ) ;
(Добавление)
Поменял на код ниже и заработало.
Ну тогда уже из чисто "спортивного интереса", почему все-таки не работает
demot
Отправлено: 20 Мая, 2011 - 13:18:55 • Тема: Динамический select • Форум: JavaScript & VBScript
Ответов: 7 Просмотров: 4436
Viper пишет: Т.к. сам в JS полный ноль
Это комментарий к вашему посту
demot пишет: Т.к. сам в JS полный ноль, то прошу не ругаться на код (делал по примеру)
Попробовал еще так (после отправки запроса dinamic_list.php возвращает строку, которую потом преобразую в массив с момощью JS)
CODE (
javascript ):
скопировать код в буфер обмена
function load_select( ) {
JsHttpRequest.query (
'dinamic_list.php' ,
{
'list' : document.getElementById ( "list" ) .value
} ,
function ( result) {
if ( result) {
var specList = document.forms [ "selform" ] .elements [ "specialists" ] ;
var listValues = result[ "list" ] .split ( "," ) ;
var listValuesCnt = listValues.length ;
for ( i = 0 ; i < listValuesCnt; i++ ) {
var newValueListOption = document.createElement ( "OPTION" ) ;
newValueListOption.text = listValues[ i] ;
newValueListOption.value = listValues[ i] ;
// тут мы используем для добавления элемента либо метод IE, либо DOM, которые, alas, не совпадают по параметрам…
( specList.options .add ) ? specList.options .add ( newValueListOption) : specList.add ( newValueListOption, null ) ;
}
}
} ,
true
) ;
}
CODE (
html ):
скопировать код в буфер обмена
<form method = "post" name = "selform" >
<select id = "list" onchange = "load_select()" >
<option > group1</ option >
<option > group2</ option >
<option > group3</ option >
</ select >
<select name = "specialists" ></ select >
</ form >
И опять же, во всех браузерах работает, кроме IE.
demot
Отправлено: 20 Мая, 2011 - 11:03:19 • Тема: Динамический select • Форум: JavaScript & VBScript
Ответов: 7 Просмотров: 4436
Ну что, не у кого нет идей?
Или может подскажите как из массива, отдаваемого PHP, собрать select с помощью js
demot
Отправлено: 19 Мая, 2011 - 14:47:45 • Тема: Динамический select • Форум: JavaScript & VBScript
Ответов: 7 Просмотров: 4436
Есть такой фреймворк (наверное можно так назвать) JsHttpRequest.
Пробую делать динамически подгружаемый select из БД по результатам выбора 1-го select'a.
frontend
CODE (
html ):
скопировать код в буфер обмена
<html ><head ><title > Specialists</ title >
<script src = "./lib/JsHttpRequest/JsHttpRequest.js" ></ script >
<script language = "JavaScript" >
function load_select() {
JsHttpRequest.query(
'dinamic_list.php',
{
'list': document.getElementById("list").value
},
function(result) {
if (result) {document.getElementById("ans").innerHTML = result["list"];}
},
true
);
}
</ script >
</ head ><body onLoad = "load_select()" >
<form method = "post" >
<select id = "list" onchange = "load_select()" >
<option > group1</ option >
<option > group2</ option >
<option > group3</ option >
</ select >
<select id = "ans" ></ select >
</ form >
</ body ></ html >
backend
PHP:
скопировать код в буфер обмена
<?PHP
require_once "./lib/JsHttpRequest/JsHttpRequest.php" ;
require_once './inc/db.con.php' ;
$JsHttpRequest =& new JsHttpRequest( "utf-8" ) ;
$group = $_REQUEST [ 'list' ] ;
$list .= '<option>-- нет --</option>' ;
$sql = "SELECT name FROM `specialists` WHERE `group`='" . $group . "' ORDER BY name ASC;" ;
$list .= '<option>' . $data [ 'name' ] . '</option>' ;
}
$GLOBALS [ '_RESULT' ] = array ( "list" => $list
) ;
?>
Так вот в чем суть проблемы. Во всех браузерах перепробывал, все работает нормально. В IE - ни в какую... Т.к. сам в JS полный ноль, то прошу не ругаться на код (делал по примеру) и подсказать как решить проблему с IE (проверял на версиях 7,8,9 - не работает).
demot
Отправлено: 17 Мая, 2011 - 15:57:50 • Тема: Помогите поправить провеку пароля • Форум: Если скрипт не работает
Ответов: 10 Просмотров: 2551
int strcmp ( string str1, string str2 )
Возвращает отрицательное число, если str1 меньше, чем str2; положительное число, если str1 больше, чем str2, и 0 если строки равны.
demot
Отправлено: 17 Мая, 2011 - 13:37:49 • Тема: Выкинуть часы/дни из даты • Форум: Хранение данных, их вывод и обработка
Ответов: 15 Просмотров: 7262
Саныч пишет: demot , вы как раз таки и сделали 3 дня, вместо двух, которые были прописаны...
вы удалили часть, которая отвечала за пятницу и теперь, если кто-то оформит заказ, к примеру, в пятницу в 14.00, то его окончание будет в понедельник в 14.00, а не в среду как вы хотели...
Да, вы правы. Вернул назад, но ситуация не изменилась, т.е. заявки оформленные в пятницу истекают в понедельник вместо среды.
И тогда все же получается что заявки понедельника и вторника имеют срок в двое суток, а не трое.
Странно конечно, уже столько рабочего функционала готово, а запнулся на, казалось бы, такой ерунде.
demot
Отправлено: 17 Мая, 2011 - 09:30:38 • Тема: Выкинуть часы/дни из даты • Форум: Хранение данных, их вывод и обработка
Ответов: 15 Просмотров: 7262
Спасибо еще раз, все работает чудненько, правда пришлось немножко подкорректировать
return mktime(date('G',$t),date('i',$t),date('s',$t),date('n',$t),date('j',$t) + (date('w',$t) == 3 ? 5 : (date('w',$t) == 4 ? 4 : (date('w',$t) == 5 ? 3 : 2) )),date('Y',$t));
заменить на
return mktime(date('G',$t),date('i',$t),date('s',$t),date('n',$t),date('j',$t) + (date('w',$t) == 3 ? 5 : (date('w',$t) == 4 ? 4 : 3 )),date('Y',$t));
Т.к. если понедельник или вторник, то добавляло только 2 дня, вместо 3-х.
demot
Отправлено: 16 Мая, 2011 - 17:06:48 • Тема: Выкинуть часы/дни из даты • Форум: Хранение данных, их вывод и обработка
Ответов: 15 Просмотров: 7262
Саныч пишет: Проверяйте...
Египетская сила!
Спасибо большое, буду проверять!
вызываю echo date("d.m.Y H:i",request_time());
Warning: date() expects parameter 2 to be long, string given in Z:\home\localhost\www\test.php on line 4
Warning: date() expects parameter 2 to be long, string given in Z:\home\localhost\www\test.php on line 4
Warning: date() expects parameter 2 to be long, string given in Z:\home\localhost\www\test.php on line 5
Warning: date() expects parameter 2 to be long, string given in Z:\home\localhost\www\test.php on line 5
Warning: date() expects parameter 2 to be long, string given in Z:\home\localhost\www\test.php on line 5
Warning: date() expects parameter 2 to be long, string given in Z:\home\localhost\www\test.php on line 5
И возвращает "левую" дату:
03.12.1999 19:00
Страниц (10): « 1 2 3 4 [5] 6 7 8 9 ... » В конец
Powered by ExBB FM 1.0 RC1. InvisionExBB