В настоящее время я работаю над тем, как сделать тег SELECT-OPTION, который может добавлять новые значения, без добавления с помощью жесткого кодирования, и обнаружил, что мы на самом деле можем использовать «динамический COMBO BOX», используя свойства DHTML.
Я попробовал идею, используя эту ссылку ==>
http://jkorpela.fi/forms/combo.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<TITLE>Combo box demo</TITLE>
<script type="text/javascript" language="JavaScript"><!--
function activate(field) {
field.disabled=false;
if(document.styleSheets)field.style.visibility = 'visible';
field.focus(); }
function last_choice(selection) {
return selection.selectedIndex==selection.length - 1; }
function process_choice(selection,textfield) {
if(last_choice(selection)) {
activate(textfield); }
else {
textfield.disabled = true;
if(document.styleSheets)textfield.style.visibility = 'hidden';
textfield.value = ''; }}
function valid(menu,txt) {
if(menu.selectedIndex == 0) {
alert('You must make a selection from the menu');
return false;}
if(txt.value == '') {
if(last_choice(menu)) {
alert('You need to type your choice into the text box');
return false; }
else {
return true; }}
else {
if(!last_choice(menu)) {
alert('Incompatible selection');
return false; }
else {
return true; }}}
function check_choice() {
if(!last_choice(document.demoform.menu)) {
document.demoform.choicetext.blur();
alert('Please check your menu selection first');
document.demoform.menu.focus(); }}
//--></script>
<form action="add_file.php" name="demoform" onsubmit=
"return valid(this.menu,this.choicetext)">
<select name="menu" onchange=
"process_choice(this,document.demoform.choicetext)">
<option value="0" selected>(please select:)</option>
<option value="1">one</option>
<option value="2">two</option>
<option value="3">three</option>
<option value="other">other, please specify:</option>
</select>
<noscript>
<input type="text" name="choicetext">
</noscript>
<script type="text/javascript" language="JavaScript"><!--
disa = ' disabled';
if(last_choice(document.demoform.menu)) disa = '';
document.write('<input type="text" name="choicetext"'+disa+
' onfocus="check_choice()">');
if(disa && document.styleSheets)
document.demoform.choicetext.style.visibility = 'hidden';
//--></script>
<p>
<input type="submit">
</form>
Закончилось просто отображением значения = "прочее" вместо нового текста, который я набираю после нажатия на кнопку отправить и сохранить в базе данных. Любая возможная помощь приветствуется. Заранее спасибо!