Сохранение документа в Web

Тема в разделе "Lotus - Программирование", создана пользователем Ogion7, 29 июл 2008.

  1. Ogion7

    Ogion7 Гость

    Всем добрый день.
    Есть форма, на ней поле Body(скрыто от веба), и компьютед текст: "<textarea name=\"Body\" rows=\"7\" cols=\"60\">" + Body + "</textarea>".
    Есть также кнопка Сохранить с кодом @Command ([FileSave]).
    После ввода тескта в textarea и нажатия сохранить денные не отправляються в поле Body.
     
  2. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    нет, не отправляются :)
    а в чем вопрос? Вы же данные не в итем Body пишете, а в другой HTML-объект...
    у Вас стоит галка Generate HTML for all fields на форме? на второй закладке
    если стоит то в HTML коде страницы будет два одноименных объекта Body...

    а зачем Вы вообще так делаете?..
     
  3. Ogion7

    Ogion7 Гость

    Хочу чтоб поле в режиме редактирования отображалось в нескольких строках

    Галка стоит
     
  4. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    чесно говоря, не уверен, попробуйте галку снять, возможно оно засабмитится...

    но это так, для теста :)
     
  5. Ogion7

    Ogion7 Гость

    Спасибо, помогло. Кнопки с лотус скриптом правда умерли))), но это не беда, перепишу

    хм, даж ява скрипт теперь в кнопках не пашет
     
  6. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    если надо сделать в несколько строк, то тут есть варианты...

    - сделать Body RT-полем;
    - сделать другое HTML-поле, при сабмите передавать данные из него в нужное, например, Ваш вариант сделать так:

    Есть форма, на ней поле Body(скрыто от веба), и компьютед текст: "<textarea name=\"Body1\" rows=\"7\" cols=\"60\">" + Body + "</textarea>".

    Есть также кнопка Сохранить1 с кодом :
    document.getElementById("Body").value = document.getElementById("Body1").value;
    document.getElementById("Save1").click();

    Есть также кнопка Сохранить1 (Save1) с кодом @Command ([FileSave]).

    тогда для пользователя будет отображаться в нужном виде...
     
  7. Ogion7

    Ogion7 Гость

    Спасибо еще раз, щас попробую
     
  8. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    к стати, ту галку лучше ставить, меньше мороки с html-лем, но больше кода (данных) в страницах

    галку не забудьте вернуть, бо Body Ваш не сгенерится, т.к. скрыт
     
  9. Ogion7

    Ogion7 Гость

    а куда надо записать имя кнопки Save1? А то скрипт не находит обьект

    Написал вместо

    document.getElementById("Body").value = document.getElementById("Body1").value;
    document.getElementById("Save1").click();


    document.getElementById("Body").value = document.getElementById("Body1").value;
    document.forms[0].submit()

    Работает
     
  10. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    а кнопка как сделана? hotspot action?.. тогда на последней закладке есть id
     
  11. Ogion7

    Ogion7 Гость

    Нет, это кнопка в Action Bar
     
  12. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    изучите все кнопки, поля и другие объекты дизайна на наличие секций с данными для веба :)
    это будет полезный опыт ;)

    с этим немного сложнее, тут нельзя просто доступиться к объекту, но у нее есть свойство label, там можно немного извратиться и сделать именованный объект... а дальше все ясно :) это так, заметка на будущее

    кроме того, Вам ничего не мешает сделать hotspot action, дать ему id, который будет выполнять @Save, а на ActionBar'е нужно выполнить заполнение нужного поля из текстарии и клик уже по хотспоту... это все можно объединить в функцию, и дергать ее из всех нужных мест... в общем :) все можно сделать по-разному
     
  13. Ogion7

    Ogion7 Гость

    Ясно, в label я собственно вначале и пытался скормить, не получилось.
     
  14. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    надо так:
    label = "[<span id="Act1">Action1</span>]"

    но проблема в том, что длинна результата этой формулы не должна превышать не то 32, не то 64 символа :) не помню...

    зы: квадратные скобки указывают, что лотус должен обработать это как HTML, это аналогично свойству текста Pass-thru HTML
     
  15. NetWood

    NetWood Lotus team
    Lotus team

    Регистрация:
    17 апр 2008
    Сообщения:
    308
    Симпатии:
    0
    Generate HTML for all fields = вредная тема. Трафик. Безопасность.
    Лучче <input name="что надо" type="hidden" value="чтото посчтитать">
     
  16. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    хм... все зависит от требований задачи и времени на е выполнение :)
    самое вредное в программировании - сам программист ;)
     
  17. Lexa-xa

    Lexa-xa Гость

    Пользуюсь вариантом с БД Advanced View Techniques (т.к. другими способами не получилось)

    Создаешь поле RichText --- name CommentRT
    в аттрибутах поля HTML Attributes указываешь например "rows=5 cols = 68"

    Далее создаешь поле Text - Computed --- name CommentText
    и в значение Value пишешь @If(@IsAvailable(CommentRT); @Abstract( [Abbrev]; 200; ""; "CommentRT");"" )

    Второе поле служит для отобажения данных в представлении (впринципе можно его и не использовать)
     
Загрузка...

Поделиться этой страницей