<SELECT name=select id=spisok onchange="ch(this);">
...
<input name="myInput" type="text" size=21 id="q" value="" readonly>
<input type="button" name="knopka" id="knopka" onclick="toggle(true);" disabled>
...
<script ...>
function toggle(state) {
document.getElementById("q").readOnly = state;
}
function ch(el) {
if (el.value == "1") {
document.getElementById("knopka").disabled = false;
} else {
document.getElementById("knopka").disabled = true;
}
toggle(false);
}
</script>
Блокировка
Как можно сделать чтобы текстовое поле было неактивно(но при этом полностью сохраняло свою функцианальность- в ней будет сложенные текстовые значения из других полей!) пока ненажали на кнопку рядом с ней. при этом кнопка тоже будет неактивна и будет активироватся только если выбран определенный пунтк из списка.
Оно?
<script language='javascript'>
function change_button_status(select)
{
if(select.value!='default')
{
var input_button = document.getElementById('input_button');
input_button.style.color = 'black';
input_button.onclick = count;
}
}
function count()
{
var text1 = document.getElementById('input_text1');
var text2 = document.getElementById('input_text2');
var text_uniq = document.getElementById('input_text_uniq');
text_uniq.value = text1.value + ' + ' + text2.value;
}
</script>
<body>
<form>
<select onchange='change_button_status(this)'>
<option value='default'>--default--
<option value='1'>1
<option value='2'>2
</select>
<input type='button' value='TEST' style='color:gray' id='input_button'>
<br>
<input type='text' id='input_text1' value='text1'>
<input type='text' id='input_text2' value='text2'>
<input type='text' id='input_text_uniq' onfocus='this.blur()'>
</form>
</body>
function MakeResult() {
var sex=document.getElementById('sex').value;
var name = document.getElementById('s').value;
var surname = document.getElementById('s2').value;
var result_string = sex + " " + name + " " + surname;
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 = sex + " " + name + " " + surname;
}
document.getElementById('q').value = result_string.substring(0,21).toUpperCase();
}
</script>
<SELECT name=select id=spisok>
<OPTION >1</OPTION>
<OPTION >2</OPTION>
</SELECT>
Name<INPUT id="s" onchange="MakeResult()">
Surname<INPUT id="s2" onchange="MakeResult()">
<SELECT onchange="MakeResult()" name=select id=sex>
<OPTION value="Mr." selected>male</OPTION>
<OPTION value="Ms.">female</OPTION>
</SELECT>
<input name="myInput" type="text" size=21 id="q" value="">
<input type="button" name="knopka">[/HTML]
вот скрипт...как сделать чтобы при выборе 1 с списке (spisok) кнопка становилась активной-и при нажатии ее , информацию в текстовом поле (Mr/Ms + Имя + Фамилия) можно было бы редактировать! а при выборе другого пункта в списке(вписок)кнопка была бы неактивнв и информацию в текстовом поле соответственно тоже нельзя было бы изменять..
Код:
<script language="Javascript">
function MakeResult() {
var sex=document.getElementById('sex').value;
var name = document.getElementById('s').value;
var surname = document.getElementById('s2').value;
var result_string = sex + " " + name + " " + surname;
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;
}
surname=surname.substring(0,1)+".";
result_string = sex + " " + name + " " + surname;
}
document.getElementById('q').value = result_string.substring(0,21).toUpperCase();
}
function toggle(state) {
document.getElementById("q").readOnly = state;
}
function ch(el) {
if (el.value == "1") {
document.getElementById("knopka").disabled = false;
} else {
document.getElementById("knopka").disabled = true;
}
toggle(false);
}
</script>
<SELECT name=select id=spisok onchange="ch(this);"><option value=0>1</option>
<option value=1>2</option></select>
Name<INPUT id="s" onchange="MakeResult()">
Surname<INPUT id="s2" onchange="MakeResult()">
<SELECT onchange="MakeResult()" name=select id=sex>
<OPTION value="Mr." selected>male</OPTION>
<OPTION value="Ms.">female</OPTION>
</SELECT>
<input name="myInput" type="text" size=21 id="q" value="" readonly>
<input type="button" name="knopka" id="knopka" onclick="toggle(true);" disabled>
function MakeResult() {
var sex=document.getElementById('sex').value;
var name = document.getElementById('s').value;
var surname = document.getElementById('s2').value;
var result_string = sex + " " + name + " " + surname;
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;
}
surname=surname.substring(0,1)+".";
result_string = sex + " " + name + " " + surname;
}
document.getElementById('q').value = result_string.substring(0,21).toUpperCase();
}
function toggle(state) {
document.getElementById("q").readOnly = state;
}
function ch(el) {
if (el.value == "1") {
document.getElementById("knopka").disabled = false;
} else {
document.getElementById("knopka").disabled = true;
}
toggle(false);
}
</script>
<SELECT name=select id=spisok onchange="ch(this);"><option value=0>1</option>
<option value=1>2</option></select>
Name<INPUT id="s" onchange="MakeResult()">
Surname<INPUT id="s2" onchange="MakeResult()">
<SELECT onchange="MakeResult()" name=select id=sex>
<OPTION value="Mr." selected>male</OPTION>
<OPTION value="Ms.">female</OPTION>
</SELECT>
<input name="myInput" type="text" size=21 id="q" value="" readonly>
<input type="button" name="knopka" id="knopka" onclick="toggle(true);" disabled>
.... = !state