sobota, 5 stycznia 2013

getForm oraz getFormInputs

Dwie przydatne funkcje przy sprawdzaniu pól formularza na stronie. Pierwsza funkcja getForm wyszukuje formularz zawierający podany jako argument element.
var getForm = function(htmlObj){
  return htmlObj.form || (function callee(o){
    return o.tagName === 'FORM' ? o : o.parentNode && callee(o.parentNode);
  })(htmlObj);
};
Kolejna funkcja getFormInputs znajduje wszystkie pola wysyłane do serwera. Zwraca obiekt z kluczami zawierającymi name pola oraz im odpowiadającymi wartościami zawierającymi value pola.
var getFormInputs = function(form){
  var res = {};
  [].concat(
    [].slice.call(document.getElementsByTagName('textarea')),
    [].slice.call(document.getElementsByTagName('input'))
  ).map(function(obj){
    if( typeof obj.name !== 'undefined' ){
      res[obj.name] = obj.value;
    }
  });
  return res;
};

Brak komentarzy:

Prześlij komentarz