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

HTML+CSS+JavaScript

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Помогите с функцией пожалуйста

Сообщения:  [1-7] 

 
 автор: 12345   (21.10.2005 в 15:45)   письмо автору
 
   для: spiner   (21.10.2005 в 14:52)
 

Так будет выведена первая, потому что document.writeln создаёт текст _до_ показа страницы. Чтобы текст выводился тот, который выбрали, менять по innerText:

<select onChange=document.all.txt.innerText=(E=event.srcElement)[E.selectedIndex].text> 
<option value="1">asd</option> 
<option value="2">2th</option> 
<option value="3">3th</option> 
</select><br> 
<div id=txt>asd</div>

   
 
 автор: spiner   (21.10.2005 в 14:52)   письмо автору
 
   для: 12345   (21.10.2005 в 13:44)
 

Действительно, алгоритм не могу объснить)))
А как все таки, как вот здесь

<select name="mSel">
<option value="1">asd</option>
<option value="2">2</option>
<option value="3">3</option>
</select><br>

<script language="JavaScript" type="text/javascript">
for (var i = 0; i < mSel.options.length; i++) {
   if (mSel.options[i].selected)
      document.writeln(mSel.options[i].text);
}
</script> 

сделать так, чтобы выводилась не только первая, а та, которую выбрали.. Спасибо!

   
 
 автор: 12345   (21.10.2005 в 13:44)   письмо автору
 
   для: spiner   (21.10.2005 в 11:07)
 

if (mSel.options[i].selected) - так как первое selected, его только распечатывает.

Да-а, если ты с JS не дружишь и постановщик из тебя никуда, то вот что получается : ).

Не понятен алгоритм, который ты хочешь реализовать. Надо выбирать несколько из 5 разделов или 1 из 5? Если несколько, то какой процедурой? последовательным выбором одного за другим и складыванием в конечный? Если да, то почему не использовать select multiple без конечного раздела (и сразу поставить size=5, чтобы все были видны)? Тогда, если написать

<form action=php.php method=get onSubmit="s=this.action;for(i in this.we.options)if(!isNaN(i)&&this.we.options[i].selected)s+=(i==0?'?':'&')+'sub'+this.we.options[i].text+'='+this.we.options[i].value;alert(s);return!1"><select id=we multiple size=5><option value=val1>1</option><option value=val2>2</option><option value=val3>3</option><option value=val4>4</option><option value=val5>5</option></select><input type=submit></form>
, то отправка создаёт ссылку.

   
 
 автор: spiner   (21.10.2005 в 11:07)   письмо автору
 
   для: elenaki   (21.10.2005 в 11:04)
 

Убирал кавычки.. Печатает только имя первого <option>Имя..
Хотя вроде в цикле стоит... Может что-то с событиями связано?

   
 
 автор: elenaki   (21.10.2005 в 11:04)   письмо автору
 
   для: spiner   (21.10.2005 в 10:36)
 

убери кавычки - распечатает значение
document.writeln(mSel.options[i].text);

   
 
 автор: spiner   (21.10.2005 в 10:36)   письмо автору
 
   для: spiner   (20.10.2005 в 23:44)
 

Ладно.. Вот начал учиться.. Я думаю здесь то поможете... Не могу понять, почему не распечатывает имя option? Посмотрите пожалуйста:

<select name="mSel">
<option value="1">asd</option>
<option value="2">2</option>
<option value="2">2</option>
</select>
<script language="JavaScript" type="text/javascript">

for (var i = 0; i < mSel.options.length; i++) {
   if (mSel.options[i].selected)
      document.writeln("mSel.options[i].text");
}
</script>

   
 
 автор: spiner   (20.10.2005 в 23:44)   письмо автору
 
 

Цель: у меня будет при регистрации, можно будет указать 5 разделов, где учавствует регистрирующийся. Вот нашел код :

<form name="razdel" action="#">
Глобальный раздел
<select name="parts" onChange="MkSubValues(this.selectedIndex)">
<option value="asd">1</option>
<option value="asd1">2</option>
<option value="asd2">3</option>
<option value="asd3">4</option>
<option value="asd4">5</option>

</select>
Конечный раздел:
<select name="Sub">
<option value="N/A">N/A</option>
</select><br>
<input type=text size=50 name=subp value="?????">

</form>
<script type="text/javascript">
<!--
var aSubValues = new Array(
"12/15,18,123",
"2,4",
"2/8,10/12",
"3",
"2,4,12,5/6,8", "asdasd"
);

function getSubValuesByparts(index){
    var sSubValues = aSubValues[index];
    return sSubValues.split(",");
}

function MkSubValues(index){
    var aCurrSubValues = getSubValuesByparts(index);
    var nCurrSubValuesCnt = aCurrSubValues.length;
    var oSubList = document.forms["razdel"].elements["Sub"];
    var oSubListOptionsCnt = oSubList.options.length;
    oSubList.length = 0;
    for (i = 0; i < nCurrSubValuesCnt; i++){
        if (document.createElement){
            var newSubListOption = document.createElement("OPTION");
            newSubListOption.text = aCurrSubValues[i];
            newSubListOption.value = aCurrSubValues[i];
            (oSubList.options.add) ? oSubList.options.add(newSubListOption) : oSubList.add(newSubListOption, null);
        }else{
            oSubList.options[i] = new Option(aCurrSubValues[i], aCurrSubValues[i], false, false);
        }
    }
}

MkSubValues(document.forms["razdel"].elements["Sub"].selectedIndex);
//-->
</script>


В строке <input type=text..> я хочу видеть значение, которое выбрали из селекта.. Но еще одна фишка: надо чтобы в конце получилась ссылка вида asd.php?sub1=value&sub2-value.....
Помогите пожалуйста.. Не дружу с JavaScript, а очень нужно..Спасибо

   

Сообщения:  [1-7] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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