[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: обработчик события на селект
korea
Вот озадачили сделать такое что бы при выборе например "На рассмотрении", открывать форму отправки сообщения

<select name="in_work<?=$row->id?>" id="selclass" obj_id="<?=$row->id?>">
<option value="1" <? if ($row->status == 'notview' and $row->isrelink != 1) {echo 'selected';} ?>>На рассмотрении</option>
<option value="2" <? if ($row->status == 'injob' and $row->isrelink != 1) {echo 'selected';} ?>>В работе</option>
<option value="4" <? if ($row->isrelink == 1) {echo 'selected';} ?>>Возвращено</option>
<option value="3" <? if ($row->status == 'ready' and $row->isrelink != 1) {echo 'selected';} ?>>Выполнено</option>
</select>


Вот только у меня не получилось, добрые люди помогите кто чем может понимаю что делать никто не будет,но интерестные ссылки были бы в самый раз)))


читал про Change но нормального обьяснения не нашел



Спустя 2 минуты, 58 секунд (13.01.2011 - 13:09) Игорь_Vasinsky написал(а):
давайка - подсвети код.

Спустя 2 минуты, 19 секунд (13.01.2011 - 13:12) korea написал(а):
<script type="text/javascript">
$(document).ready(function(){

$("#selclass").live("change", function(){
var valsel = $("option:selected",this).val();
var obj_val = $(this).attr('obj_id');
var $place_action = $(this).parent();
var $prev_action = $(this).parent().prev();
var $this_action = $(this);

$(this).animate({opacity: 0.0}, 100).hide();
$prev_action.animate({opacity: 1.0}, 500).show();

// $(this).hide();

$.ajax({
type: "POST",
url: "ajax.php",
data: "type=get_status&obj_val="+obj_val+"&res_val="+valsel,
success: function(text){
if (text == 'ok') {
$prev_action.animate({opacity: 0.0}, 500).hide();
$this_action.animate({opacity: 1.0}, 500).show();
}
}
});
});

});
</script>


<table id=my14>
<tr>
<td id="my15">&nbsp;</td>
<td id="my16">&nbsp;</td>
<td id="my17">&nbsp;</td>
</tr>
<tr>
<td id=my18><img border="0" src="media/1x1.gif" width=1 height=350></td>
<td id=my20>

<table id="ref" class="tablesorter">
<tbody>
<tr id=red>
<td id=bu>1</td>
<td id=txt><span><?=is_user($row->userid)?></span><br><?=$row->title?></td>


<td id=txt style="width:160px;text-align:center;">
<div class="preload"><img src="media/pre.gif" width="26" height="18" alt="Загрузка..."></div>
<div class="sell_<?=$row->id?>" style="width:155px;">
<select name="in_work<?=$row->id?>" id="selclass" obj_id="<?=$row->id?>">
<option value="1" <? if ($row->status == 'notview' and $row->isrelink != 1) {echo 'selected';} ?>>На рассмотрении1</option>
<option value="2" <? if ($row->status == 'injob' and $row->isrelink != 1) {echo 'selected';} ?>>В работе</option>
<option value="4" <? if ($row->isrelink == 1) {echo 'selected';} ?>>Возвращено</option>
<option value="3" <? if ($row->status == 'ready' and $row->isrelink != 1) {echo 'selected';} ?>>Выполнено</option>
</select>
</div>
</td>
<td>#<?=$row->adresss?></td>
<td>#<?=$row->id?></td>
<td><?=date("d.m.Y",$row->time)?></td>
</tr>
</tbody>
</table>

Спустя 1 минута, 1 секунда (13.01.2011 - 13:13) korea написал(а):
...

Спустя 12 секунд (13.01.2011 - 13:13) ApuktaChehov написал(а):
Вот элементарнейший пример:

<select name="in_work<?=$row->id?>" id="selclass" obj_id="<?=$row->id?>" onchenge="openForm(this.value);">
    function openForm(value)
{
if(value == 1)
открываем форму
}

Спустя 4 минуты, 48 секунд (13.01.2011 - 13:18) alex12060 написал(а):
<select name="in_work<?=$row->id?>" id="selclass" obj_id="<?=$row->id?>" onchenge="openForm(this.value);">


Что то здесь по-моему ничего не выводится)

Получается такое дело:


<select name="in_work" id="selclass" obj_id="" onchenge="openForm(this.value);">


Или я не прав?

Спустя 2 минуты, 40 секунд (13.01.2011 - 13:20) Игорь_Vasinsky написал(а):
Цитата
давайка - подсвети код.


))) я имел ввиду - отредактировать с одсветкой. так и читать удобней и искать решение тоже.

Спустя 5 секунд (13.01.2011 - 13:20) ApuktaChehov написал(а):
Опа, пардон, у меня тут оперчаточка закралась:
<select name="in_work<?=$row->id?>" id="selclass" obj_id="<?=$row->id?>" onchange="openForm(this.value);">


onchenge -> onchange

Должно работать. В любом случае смысл понятен. wink.gif

Спустя 35 секунд (13.01.2011 - 13:21) korea написал(а):
Я плохо разбираюсь в java script но я примерно так понял


<script type="text/javascript">
function openForm(value)
{
if(value == 1) {

<form action="/<?=$lang?>/ews/" method="post">
бла бла бла
</form>
}


if(value == 2) {

<form action="/<?=$lang?>/ews/" method="post">
тра та та
</form>
}

}
</script>

Спустя 2 минуты, 16 секунд (13.01.2011 - 13:23) ApuktaChehov написал(а):
Охоспатииии.

function openForm(value, obj)
{
if(value == 1)
obj.innerHTML = '<form action="/<?=$lang?>/ews/" method="post">бла бла</form>';
}

obj - это объект в котором должна появиться форма.

Спустя 24 минуты, 54 секунды (13.01.2011 - 13:48) korea написал(а):
<select name="in_work<?=$row->id?>" id="selclass" obj_id="<?=$row->id?>" onchange="openForm(this.value);">
<option value="1" <? if ($row->status == 'notview' and $row->isrelink != 1) {echo 'selected';} ?>>На рассмотрении1</option>
<option value="2" <? if ($row->status == 'injob' and $row->isrelink != 1) {echo 'selected';} ?>>В работе</option>
<option value="4" <? if ($row->isrelink == 1) {echo 'selected';} ?>>Возвращено</option>
<option value="3" <? if ($row->status == 'ready' and $row->isrelink != 1) {echo 'selected';} ?>>Выполнено</option>
</select>
</div>
</td>
<td>#<?=$row->adresss?></td>
<td>#<?=$row->id?></td>
<td><?=date("d.m.Y",$row->time)?></td>
</tr>
</tbody>
</table>





<script type="text/javascript">
function openForm(value)
{
if(value == 1)
obj.innerHTML = '
TEXT
';

}

</script>



и ничего не выводит?

Спустя 11 минут, 1 секунда (13.01.2011 - 13:59) ApuktaChehov написал(а):
Вот держи:
function openForm(value, obj_id)
{
if(value == 1)
document.getElementById(obj_id).innerHTML = 'TEXT';
}

<select onchange="openForm(this.value, 'div');">
<option
value="0">Выбрать</option>
<option
value="1">На рассмотрении1</option>
<option
value="2">В работе</option>
<option
value="4">Возвращено</option>
<option
value="3">Выполнено</option>
</select>
<div
id="div"></div>

Спустя 18 минут, 42 секунды (13.01.2011 - 14:18) korea написал(а):
ApuktaChehov


Спасибо друг очень меня выручил.

Спустя 19 минут, 10 секунд (13.01.2011 - 14:37) ApuktaChehov написал(а):
Всегда пожалуйста!

А что ты делаешь хоть? Так, чисто из любопытства.

Спустя 18 минут, 1 секунда (13.01.2011 - 14:55) korea написал(а):
Хм да как те сказать это вещь для очень малого круга людей, система по обьединению гос закупок.


вот тока можно ещё вопрос я как бы помню когда вставляешь php в java то надо экранизировать '

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


document.getElementById(obj_id).innerHTML = '<a name=feed></a>
<form action="/<?=$lang?>/say_news/" method="post"><input name="write" type="hidden" value="ok">
<table>
<tr><td width=100><b>Дата:</b></td><td><input id="txt00" name="contact_s" size="60"></td></tr><tr>
<tr><td width=100><b>Название:</b></td><td><textarea id="txt02" rows="3" name="cate_s" cols="47"></textarea></td></tr><tr>
<tr><td width=100><b>E-mail:</b></td><td><input id="txt00" name="email_s" size="60"></td></tr>
<tr><td width=100><b>Содержание:</b></td><td><textarea id="txt02" rows="6" name="text_s" cols="47"></textarea></td></tr><tr>
<tr><td width=100> </td><td><br><input type="submit" class="reg_inp_btn" value="Отправить" id=but></td></tr><tr>
</table>
</form> ';

и вот она убивается, тоже лазею по форумам ничего найти не могу(



Спустя 6 часов, 24 минуты, 19 секунд (13.01.2011 - 21:19) ApuktaChehov написал(а):
Когда идет HTML код в JS, то переносы строк делать нельзя.

Спустя 3 дня, 10 часов, 56 минут, 52 секунды (17.01.2011 - 08:16) korea написал(а):
Хех проканало))), эххх долго это учиться программировать))) прошло уже больше чем полгода, а я до сих пор ламер)))

Спустя 3 часа, 12 минут, 12 секунд (17.01.2011 - 11:28) Basili4 написал(а):
korea
Легко - это только пиво пить. Остальное труд и время.


_____________
Я только учусь)))
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.