Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

При условии....

15K
02 февраля 2007 года
anver3
19 / / 31.01.2007
Можно..сделать так что при выборе из списка....1го...значения......оно отображалось в текстовом поле и его невозможно было стереть..а при выборе 2го можно было стирать и редактировать...?

вот в на этом примере..просто здесь и так всего много(ну по моим меркам) поэтому боюсь запутатся...

Код:
<script language="Javascript">
var mr="Mr.";
var ms="Ms.";

function MakeResult() {
   var result_string = document.getElementById('q').value;
   var name = document.getElementById('s').value;
   var surname = document.getElementById('s2').value;
   
   //
   if (result_string.length > 21) {
     switch (name.substring(0,2)){
        case "Sh":
        case "Ch":
        case "Kh":
                name = name.substring(0,2);
                break;
        default:
                name = name.substring(0,1);
                break;
     }
     result_string = result_string.substring(0,3) + " " + name + ". " + surname;
     document.getElementById('q').value = result_string.substring(0,21). toLocaleUpperCase();
   }
}

function OnListSelect(list) {
  if(list==0) {
     document.getElementById('q').value=mr+" "+document.getElementById('s').value +" "+document.getElementById('s2').value;
  }

  if(list==1) {
    document.getElementById('q').value=ms+" "+document.getElementById('s').value +" "+document.getElementById('s2').value;
  }
  MakeResult();
}

function OnTextChange() {
  var list = document.getElementById('sex').value;
  OnListSelect(list);
}
</script>

<SELECT  name=xxx id=xxx>
<OPTION >1</OPTION>
<OPTION>2</OPTION>
<OPTION>3</OPTION>
<OPTION>4</OPTION>
</SELECT>

Name<INPUT id="s" &#111;&#110;change="OnTextChange()">
Surname<INPUT id="s2" &#111;&#110;change="OnTextChange()">

<SELECT &#111;&#110;change="OnListSelect(value)" name=select id=sex>
<OPTION value=0 selected>male</OPTION>
<OPTION value=1>female</OPTION>
</SELECT>

<input name="myInput" type="text" size=21 id="q" value="">


вот например при выборе значения 1 в списке xxx (1,2,3,4) +при выборе значения male в списке select(male feemale) в текстовом поле писалось соответственно Mr. (или же Ms. если выбранно female)....и это значение невозможно было бы удалить(только Ms/Ms остольную часть можно редактировать)...а при выборе другого значения например 2 слово Mr/ms Тоже писалось но его можно было спокойно редактировать...

Такая конетель.. просто в некоторых случаях обязательно чтобы обращение Ms/Ms ыло а в других случаях по желанию...
92
02 февраля 2007 года
Тень Пса
2.2K / / 19.10.2006
эх.... ну можно сделать проще.....

например при выборе твоего значения 1 (чтобы обращение было обязательным), ты просто ставишь disabled текстового поля в true и пишешь сам туда что угодно, а пользователь это отредактировать не сможет...

а при выборе значения 2 (чтобы обращения не было), в функции, которая генерит итоговое значение поля (обращение + имя + фамилия), просто убираешь вставку Mr./Ms.

это будет проще, чем придумывать как сделать так, чтобы часть одного текстового поля редактировалась, а часть нет....

PS: ну или еще вариант, вынести обращение (Mr./Ms.) в отдельное текстовое поле при возможности его редактирования, а в противном случае, просто написать его.... эммм..... в какой-нить тэг наподобие <span> задать ему id и класть (или не класть) туда значение выбранного обращения.

фух... вроде всё ;)
10K
02 февраля 2007 года
ChesnoK
57 / / 18.07.2006
[HTML]
<SELECT onchange="OnListSelect(value)" name=select id=sex>
[/HTML]
Вот насчёт этой строчки - разве могут одному и тому же элементу присваиваться разные идентификаторы "name" и "id"? или могут?
92
02 февраля 2007 года
Тень Пса
2.2K / / 19.10.2006
конечно могут :D

id - можно юзать JavaScript'ом (getDocumentById) и CSS'ом (.class #id)
name - JavaScript'ом и служит для определения данных в этом поле формы, по имени... ну собссна больше и никак (при передаче запроса) (php: $_POST["name"], $_GET["name"]; например) =)))))))))

да и вообще, странный вопрос )
253
02 февраля 2007 года
Proger_XP
1.5K / / 07.08.2004
Цитата:

id - можно юзать JavaScript'ом (getDocumentById)


document.getElementById :)

92
02 февраля 2007 года
Тень Пса
2.2K / / 19.10.2006
да..... извините...... правильно...

пожалуй уйду я на несколько дней..... траблы.......................................
15K
05 февраля 2007 года
anver3
19 / / 31.01.2007
вот результат..только почемуто toLocaleUpperCase(); идет только на результат которы подвергся сокращению...а если сокращение непроизошло то в БОЛЬШИЕ БУКВЫ не переводит....как бы исправить..?


[HTML]<script language="Javascript">
var mr="Mr.";
var ms="Ms.";

function MakeResult() {
var result_string = document.getElementById('q').value;
var name = document.getElementById('s').value;
var surname = document.getElementById('s2').value;
if (result_string.length > 21) {
switch (name.substring(0,2)){
case "Sh":
case "Ch":
case "Kh":
name = name.substring(0,2);
break;
default:
name = name.substring(0,1);
break;
}
result_string = result_string.substring(0,3) + " " + name + ". " + surname;
document.getElementById('q').value = result_string.substring(0,21). toLocaleUpperCase();
}
}

function OnListSelect(list) {
if(list==0) {
document.getElementById('q').value=document.getElementById('s').value +" "+document.getElementById('s2').value;
document.getElementById('status').value= mr;
}

if(list==1) {
document.getElementById('q').value=document.getElementById('s').value +" "+document.getElementById('s2').value;
document.getElementById('status').value=ms;
}
MakeResult();
}

function OnTextChange() {
var list = document.getElementById('sex').value;
OnListSelect(list);
}

function setStatus(stat)
{

switch(Number(stat))
{
case 2:
document.getElementById('status').disabled = true;
break;
default:
document.getElementById('status').disabled = false;
break;
}
}

</script>

<SELECT name=xxx id=xxx onChange="setStatus(this.value);">
<OPTION value=1>1</OPTION>
<OPTION value=2>2</OPTION>
</SELECT>

Name<INPUT id="s" onchange="OnTextChange()">
Surname<INPUT id="s2" onchange="OnTextChange()">

<SELECT onchange="OnListSelect(value)" name=select id=sex>
<OPTION value=0 selected>male</OPTION>
<OPTION value=1>female</OPTION>
</SELECT>
<input type="text" id="status" value="" size=2 maxlength="4" style="border-right: 0px;"><input name="myInput" type="text" size=21 id="q" value="" style="border-left: 0px;">[/HTML]
92
05 февраля 2007 года
Тень Пса
2.2K / / 19.10.2006
Цитата: anver3
вот результат..только почемуто toLocaleUpperCase(); идет только на результат которы подвергся сокращению...а если сокращение непроизошло то в БОЛЬШИЕ БУКВЫ не переводит....как бы исправить..?



[html]<script language="Javascript">
var mr="Mr.";
var ms="Ms.";

function MakeResult() {
var result_string = document.getElementById('q').value;
var name = document.getElementById('s').value;
var surname = document.getElementById('s2').value;
if (result_string.length > 21) {
switch (name.substring(0,2)){
case "Sh":
case "Ch":
case "Kh":
name = name.substring(0,2);
break;
default:
name = name.substring(0,1);
break;
}
result_string = result_string.substring(0,3) + " " + name + ". " + surname;
document.getElementById('q').value = result_string.substring(0,21);
}
}

function OnListSelect(list) {
if(list==0) {
document.getElementById('q').value=document.getElementById('s').value +" "+document.getElementById('s2').value;
document.getElementById('status').value= mr;
}

if(list==1) {
document.getElementById('q').value=document.getElementById('s').value +" "+document.getElementById('s2').value;
document.getElementById('status').value=ms;
}
MakeResult();
document.getElementById('q').value = document.getElementById('q').value.toLocaleUpperCase();
}

function OnTextChange() {
var list = document.getElementById('sex').value;
OnListSelect(list);
}

function setStatus(stat)
{

switch(Number(stat))
{
case 2:
document.getElementById('status').disabled = true;
break;
default:
document.getElementById('status').disabled = false;
break;
}
}

</script>

<SELECT name=xxx id=xxx onChange="setStatus(this.value);">
<OPTION value=1>1</OPTION>
<OPTION value=2>2</OPTION>
</SELECT>

Name<INPUT id="s" onchange="OnTextChange()">
Surname<INPUT id="s2" onchange="OnTextChange()">

<SELECT onchange="OnListSelect(value)" name=select id=sex>
<OPTION value=0 selected>male</OPTION>
<OPTION value=1>female</OPTION>
</SELECT>
<input type="text" id="status" value="" size=2 maxlength="4" style="border-right: 0px;"><input name="myInput" type="text" size=21 id="q" value="" style="border-left: 0px;">
[/html]

вроде бы так.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог