если еще

  • Автор темы EkaV
  • 92
  • Обновлено
  • 17, May 2024
  • #1
Привет, Я пытаюсь создать скрипт для отключения полей, когда поле «Статус» = «Закрыто». Я добавил ifclosed в часть загрузки страницы. но, похоже, не могу заставить его работать. На странице только одна форма. Что мне не хватает?

Спасибо Дэйвид
 <script type="text/javascript">

function ifclosed()

{

with (document.forms[1])

{

if (STATUS.value = "CLOSED")

{document.forms[1].VEREFF.disabled=true};

{document.forms[1].CMNTS.disabled=true};

{document.forms[1].fp_submit.disabled=true};

else

{document.forms[1].VEREFF.disabled=false};

{document.forms[1].CMNTS.disabled=false};

{document.forms[1].fp_submit.disabled=false};

}

}

</script>
PHP:

EkaV


Рег
29 Oct, 2014

Тем
1

Постов
3

Баллов
13
  • 18, May 2024
  • #2
Я понял. Не программист. Только баловаться. Гораздо проще хранить данные через БД, чем бесконечную бумагу. Я знал Access и понял, как получить доступ к БД через FP. Из-за подключений к БД я никогда не смотрел дальше.
 

spam-radio radio


Рег
28 Jun, 2012

Тем
0

Постов
2

Баллов
2
  • 21, May 2024
  • #3
Я хочу изменить поля на отключенные, если поле статуса имеет значение «ЗАКРЫТО». В противном случае поля не отключены. Таким образом, пользователь не сможет изменить данные после того, как запись была «ЗАКРЫТА». Извините... нет ссылки. Сайт только внутренний. Дэйвид
 

ilya11


Рег
10 Feb, 2014

Тем
0

Постов
1

Баллов
1
  • 31, May 2024
  • #4
Привет, DeathShadow! Надеюсь, ты бросишь это сюда.

Можете ли вы предложить альтернативу Frontpage? Мне также необходимо рассмотреть возможность создания подключений к базе данных. Я, конечно, открыт для предложений.

Это всего лишь 1% моей работы здесь, и внутренние веб-проблемы решаются очень редко. Спасибо Дэйвид
 

Valentin3


Рег
27 Jul, 2015

Тем
1

Постов
3

Баллов
13
  • 03, Jun 2024
  • #5
Глупый вопрос с моей стороны, а как выглядит ФОРМА? Все ли они находятся в едином наборе полей? Если да, то зачем жестко запрограммировать каждый из этих входов вместо того, чтобы просто ходить по DOM?

Кроме того, вы уверены, что имеете в виду = "закрыто", а не == ?!?

НЕ то, чтобы я полагался на индексированные массивы .Forms, а что, если вы переупорядочите содержимое и/или добавите еще одну форму? Вот почему доступ по идентификатору - ваш друг...

Хотя то, как это закодировано, это ВЫГЛЯДИТ как нечто, что, вероятно, даже не следует обрабатывать на стороне клиента.
 

leonavt


Рег
01 Jan, 2011

Тем
0

Постов
3

Баллов
3
  • 05, Jun 2024
  • #6
IE может быть хладнокровным в вопросах изменения атрибутов элементов формы.

Особенно те, которые контролируют его поведение, например «только чтение», «отключено» и «типирование». Тип, в частности, — это PITA, поскольку вам, по сути, нужно клонировать элемент и заменить его в DOM, чтобы изменить в нем что-либо значимое.

Это также НЕ совсем надежно для устаревшего массива document.forms в стиле Netscape 4, часто его не удается заполнить, если элементы формы динамически создаются с использованием JavaScript.

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

Вот почему я бы НЕ использовал массив document.forms ИЛИ не пытался получить доступ к элементам формы по их атрибутам имени в JavaScript.

Примечание: если вы собираетесь установить цвет фона из .style, не выполняйте строку, которую вы перезаписываете, полностью в любом родном CSS! Вот почему вы устанавливаете style.backgroundColor="#E0E0E0";

#E0E0E0, думаю, я хочу узнать тебя, узнать тебя, уоу-о, эта любовь джунглей, да #E0E0E0... Мы когда-нибудь упоминали, какая заноза в заднице поддержка JScript (клон JavaScript в IE, который не является ВОВРЕМЯ JavaScript)? Опять же, мне было бы интересно увидеть ФОРМУ.

таким образом можно было бы написать НАДЛЕЖАЩИЙ код для того, что вы делаете, поскольку без этого любой представленный сценарий является просто дикими догадками и, возможно, откровенной тарабарщиной.
 

svetbozhkova


Рег
01 Jan, 2011

Тем
0

Постов
1

Баллов
1
  • 07, Jun 2024
  • #7
Ну вот и твоя проблема...

Серьезно, просто остановись.

Ваша разметка устарела НА ДВА ДЕСЯТИЛЕТИЯ, у вас есть бесконечный бессмысленный JavaScript, выполняющий работу HTML и CSS, ничего даже отдаленно напоминающего семантическую разметку, есть таблицы для макета, презентационная разметка, нет доктайпа, устаревшая несовместимая кодировка символов...

ЕДИНСТВЕННОЕ, чему вы можете научиться на Frontpage, — это тому, как НЕ создавать веб-сайт. ТОЛЬКО теперь, когда он мертв и похоронен своими создателями уже почти ДЕСЯТИЛЕТИЕ.

... что подтверждает мои подозрения: вы пытаетесь использовать JavaScript во что-то, что не контролируется НУЛЕВЫМ бизнесом из JavaScript.

Это НЕ то, как вы должны использовать HTML, CSS или JS. СОВСЕМ.

Весь этот беспорядок нужно выбросить в мусор и начать заново – ЛЮБОЙ, говорящий вам обратное, пускает дым вам в зад.
 

mariana2


Рег
11 Jan, 2013

Тем
0

Постов
3

Баллов
3
  • 08, Jun 2024
  • #8
Ах... думаю, оно у меня есть. Я немного изменил его.
 <script>

var myForm = document.forms[1];

if (myForm.STATUS.value != "OPEN")

{

myForm.DOCNO.setAttribute("readonly", true);

myForm.PLANNO.setAttribute("readonly", true);

myForm.STATUS.setAttribute("readonly", true);

myForm.DESCR.setAttribute("readonly", true);

myForm.VEREFF.setAttribute("readonly", true);

myForm.CMNTS.setAttribute("readonly", true);

myForm.fp_submit.setAttribute("disabled", "disabled");

}

else

{

myForm.DOCNO.removeAttribute("readonly");

myForm.PLANNO.removeAttribute("readonly");

myForm.STATUS.removeAttribute("readonly");

myForm.DESCR.removeAttribute("readonly");

myForm.VEREFF.removeAttribute("readonly");

myForm.CMNTS.removeAttribute("readonly");

myForm.fp_submit.removeAttribute("disabled");

}

</script>
PHP:
 

Aleks1515


Рег
22 Sep, 2012

Тем
0

Постов
4

Баллов
4
  • 10, Jun 2024
  • #9
Однако я столкнулся с чем-то странным. Код работает в Chrome и Firefox, но не в IE. Однако это делает...
 <script>

{

document.forms[0].Shop_Order.setAttribute("readOnly", "readOnly");

document.forms[0].Shop_Order.style="background-color: #E0E0E0";

}

</script>
PHP: я пробовал разные варианты атрибута readOnly.
 

sedplata


Рег
01 Jan, 2011

Тем
0

Постов
3

Баллов
3
  • 10, Jun 2024
  • #10
Привет Дэвид, Эээ, я думал, вы пытаетесь изменить поля (в зависимости от статуса), но не сам статус; чего ты на самом деле хочешь достичь? И, возможно, URL-ссылка на (тестовую) страницу поможет мне это понять?
 

stas79


Рег
21 Mar, 2013

Тем
1

Постов
3

Баллов
13
  • 11, Jun 2024
  • #11
Привет, Хендра! Спасибо за быстрый ответ. Я дал этому вихрь, и происходит что-то странное.

Поля отключены, однако похоже, что статус временно меняется на ЗАКРЫТО.

Если я удалю скрипт, статус снова станет открытым.

У меня есть несколько записей испытаний, с которыми нужно разобраться, и это случается со всеми из них. Дэйвид
 

shiza361


Рег
02 Apr, 2013

Тем
0

Постов
3

Баллов
3
  • 14, Jun 2024
  • #12
Привет, Обычно я использую следующий шаблон ниже. Затем просто поместите весь скрипт внизу страницы, прежде чем закрыть тег body ...
 <script>

var myForm = document.forms[1];

if (myForm.STATUS.value = "CLOSED"){

myForm.VEREFF.setAttribute('disabled', 'disabled');

myForm.CMNTS.setAttribute('disabled', 'disabled');

myForm.fp_submit.setAttribute('disabled', 'disabled');

}

else{

myForm.VEREFF.removeAttribute("disabled");

myForm.CMNTS.removeAttribute("disabled");

myForm.fp_submit.removeAttribute("disabled");

}

</script>
Код (JavaScript). Видите какие-либо ошибки в веб-консоли? Хендра
 

Snowman934


Рег
11 Oct, 2013

Тем
0

Постов
2

Баллов
2
Тем
49554
Комментарии
57426
Опыт
552966

Интересно