У меня возникли проблемы с некоторым javascript и как он может управлять текстовым полем html.Обновление текстового поля с javascript
Во-первых, вот что у меня есть; JavaScript:
function UpdateOrder()
{
// enable/disable appropriate buttons
document.getElementById("reset").disabled=false;
document.getElementById("add").disabled=false;
document.getElementById("submit").disabled=false;
document.getElementById("edit").disabled=false;
document.getElementById("update").disabled=true;
// Show display box, 'DispCurOrder'
document.getElementById('all_labels').disabled=true;
}
function EditOrder()
{
// enable/disable appropriate buttons
document.getElementById("reset").disabled=true;
document.getElementById("add").disabled=true;
document.getElementById("submit").disabled=true;
document.getElementById("edit").disabled=true;
document.getElementById("update").disabled=false;
document.getElementById('all_labels').disabled=false;
}
Идея проста ... У меня есть некоторые кнопки и входы для создания «линии» текст, который получает сбрасывал в-х инвалидов текстового поля. Если оператор замечает, что они сделали тип-o или что-то захочет что-то изменить, он нажимает «изменить порядок» и отключает все обычные кнопки и включает текстовое поле и кнопку «Обновить». Кнопка «порядок обновления» отменяет это.
Теперь, когда я просто использую строки добавления в текстовое поле, все работает хорошо. Вы можете видеть, что каждая строка добавляется в текстовое поле (есть еще одна функция java, которая выполняет проверку ошибок и т. Д.), Но суть в том, что она занимает содержимое текстового поля, анализирует его на «\ n» на массив, а затем добавляет новую строку текста, то он принимает массив и помещает все это в качестве новой строки и помещает его обратно в текстовом поле Вот та часть, не проверив все ошибки вещей,..
function AppendOrder()
{
// let's set up an error flag.
var AppendError="";
var str1=document.forms["MyForm"].DataEntry1.value;
var str2=document.forms["MyForm"].DataEntry2.value;
if(/* checking variable str1 for errors */)
{
AppendError="Error in str 1 here";
}
if(/* checking variable str1 for errors */)
{
AppendError=AppendError+"Error in str 2 here";
}
// Display the error message, if there are no errors, it will clear what was there.
$('#AppendStatus').html(AppendError);
if(AppendError=="")
{
// it's all good, update the display
// create line of text
curEntry=str1 + " -- " + str2;
// let's get the current order into a list
str=document.getElementById('all_data').innerHTML;
if(str1=="Empty")
{
// make curOrder = to 1 element array of curEntry
var curOrder=[curEntry];
}
else
{
// parse str1 into an array and parse it to curOrder.
// Then push curEntry on the end.
var curOrder=str1.split("\n");
curOrder.push(curEntry);
}
// now we should have an array called 'curOrder[]'. Let's show it
// on the web page.
$('#all_labels').html(curOrder);
}
}
Теперь проблема в том, что после добавления строки или двух (или более) на дисплей с помощью кнопки «добавить», а затем перейдите в режим «редактирования» (там, где текстовое поле включено) и Я делаю все свои изменения, кнопка «добавить» не работает.
Странно достаточно, когда я нажимаю кнопку «сброса» (которая является только кнопкой сброса), она показывает все добавления, которые я сделал после редактирования, и отредактированные материалы исчезли.
Теперь ... на вопрос ... есть ли что-то, что я не понимаю в текстовом поле? Есть ли какой-то трюк, который мне нужно сделать, чтобы заставить его работать? Неужели я все это делаю неправильно? Должен ли я использовать другой инструмент для этого, кроме «текстового окна»?
Любая помощь очень ценится !!
Грегло
ли элемент текстового поля (all_labels?) Текстовой или '<входной тип = "текст" и т.д.>' или? – gibberish
Да, текстовое поле является текстовым полем ... Я знал, что собираюсь забыть поставить немного информации здесь ... –