Удаление автоматического тега <form action="">

NetWood

Well-Known Member
Lotus team
17.04.2008
371
16
#1
Известно, что сервер Domino автоматически вставляет на web форму тег <form action=""> в начале страницы после тега <body>. На простых дизайнах на это можно не обращать внимания или просто заткнуть начальным закрывающим тегом </form>,
Чтобы видеть этот контент необходимо: Войти или зарегистрироваться
. Однако, я столкнулся с одним адаптивным шаблоном, на котором этот тег здорово портит жизнь и в начале страницы появляется белая полоска, которую никак не убрать.

Untitled3.png
Внизу страницы также появляется неубираемая белая полоска от <form action=""></form>.

Поскольку в шаблоне используется jQuery, то я решил поставить простой костыль для убивания оной неприятности через $('form').remove с меткой onimod.
Код:
$(function() {
        $('form').remove( ":contains('onimod')" ); //Remove Domino autogen <form action=""></form>
...
Соответственно, форма Domino должна начинаться тегом onimod</form>
Untitled1.png

И заканчиваться тегом <form>onimod
Untitled2.png

Которые обе убьются сриптом и, в итоге, мы здорово заживем.
Untitled4.png
Если глянуть на содержимое хтмл этой страницы, то не будет ни одного бездомного form. Красиво!

Чтобы видеть этот контент необходимо: Войти или зарегистрироваться
для самостоятельной проверки.

Внимательно слушаю, если есть другие конструктивные предложения :).
 
Последнее редактирование:

ToxaRat

Чёрный маг
Lotus team
06.11.2007
3 226
25
#3
а зачем вообще доминошную форму показывать?
 

ToxaRat

Чёрный маг
Lotus team
06.11.2007
3 226
25
#5
я о другом, любой сабмит можно делать на подготовленную универсальную форму, у которой внешнего вида вообще нет
 

NetWood

Well-Known Member
Lotus team
17.04.2008
371
16
#6
...и проститься с лотусовыми полями и собакоформулами в них. Об этом и речь в топике. А так, да, готовить заранее полезно.
 

anna

Well-Known Member
Lotus team
03.06.2014
400
11
#7
...и проститься с лотусовыми полями и собакоформулами в них. Об этом и речь в топике. А так, да, готовить заранее полезно.
Я несколько подзабыла уже как что в вебе, но решала точно так же, как вы.
 

rinsk

Well-Known Member
Lotus team
12.11.2009
896
84
#8
...и проститься с лотусовыми полями и собакоформулами в них. Об этом и речь в топике. А так, да, готовить заранее полезно.
а зачем удалять форму то? Норм там все) Мало того - можно юзать и рефреши стандартные даже с полями вне формы - типа динамическими, подгружаемые через rest. Эдакий а-ля иксПейдж.
что то вроде такого:
Код:
if (!window._doClickNew && window._doClick) {
        window._doClickNew=window._doClick
        window._doClick=window.newDoClick
}
function newDoClick(v, o, t, h){
    if(v=="$Refresh" || v.indexOf('$TableRow')!=-1 || v.indexOf('/$Body/')!=-1){
        fields_store(stored_content)
        h='';
window.sessionStorage.setItem('$RefreshPoz',$(document).scrollTop())
        // отключаем onSubmit у формы
        if (v.indexOf('/$Body/')==-1) {
            document.forms[0].onsubmit=function() {return beforeSubmit()};
        }
    }
    return window._doClickNew(v, o, t,h)
}
beforeSubmit() - что то типа:
Код:
function beforeSubmit(){
    progress_show();
    $('#event_actions input[type="button"]').prop("disabled", true)
    $('body').addClass('body_onsubmit') 
    return true;
}
Баловался еще лотусовыми чекбоксами\селектам обернутыми в контейнер - пашет...
 
Последнее редактирование:

NetWood

Well-Known Member
Lotus team
17.04.2008
371
16
#9
Мало того - можно юзать и рефреши стандартные даже с полями вне формы - типа динамическими, подгружаемые через rest. Эдакий а-ля иксПейдж
Тут я немного не понял, так как не хватает полного контекста задачи, (в скобках читаем слабая квалификация в JS :) ), но вот
Чтобы видеть этот контент необходимо: Войти или зарегистрироваться
использовал выгрызание RT контента для подгрузки содержимого в бесконечную вьюху как-то так:
Код:
//Get only data body content in <body ...><form action="">content</form></body>
function getbodycontent(data,start,stop) {
    //alert(data);
    return data.substring(data.indexOf(start)+start.length,data.indexOf(stop));
};

//Load content on scroll automatically   
var loading = false;
$(window).scroll(function(){
if((($(window).scrollTop()+$(window).height())+250)>=$(document).height()){
  if(loading == false){
  loading = true;
  $('#loadingbar').show();     //Display down50.png as loading true. Style set in css/style.css
      //Load RT Memo from Lotus Domino View preloaded as function doAjax(id,url) in Form $$ViewTemplate for doMemoLoad
    $.get("doMemoLoad?OpenView&start="+$('#loaded_max').val()+"&count=1")
    .success(function(data){
            var $body = getbodycontent(data, '<form action="">','</form>');
                $('#content_load').append($body).fadeIn();    //Add content to id='content'
                $('#loaded_max').val(parseInt($('#loaded_max').val())+1);    //Increment '#loaded_max'
                $('#loadingbar').hide(); //Hide down50.png after loading
                loading = false;
          })
    .error(function(xhr,statusText){
            loading = false; //for continue load without refresh page
            $.toast('Network '+statusText+ ' '+ xhr.status);           
            });
  }
}
});   

//Set Load Max for Load content on scroll automatically
$(document).ready(function() {
$('#loaded_max').val(3); //<input type="hidden" size="1" id="loaded_max">
    //After load jQuery preload first two Rich Text memo in id='content_load' and set next $('#loaded_max').val(3)
    $.get("doMemoLoad?OpenView&start=1&count=2")     
    .success(function(data){
        var $body = getbodycontent(data, '<form action="">','</form>');
            $('#content_load').append($body).fadeIn();    //Load content to id='content'
          })
    .error(function(xhr,statusText){$.toast('Network '+statusText+ ' '+ xhr.status);});
});
// -->