Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Strano problema con removeChild

    Ciao.
    Lo snippet:
    Codice PHP:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <
    html xmlns="http://www.w3.org/1999/xhtml" xml:lang="it" lang="it" dir="ltr">
    <
    head>
    <
    title>Test</title>
    <
    meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <
    script type="text/JavaScript">
    /* shortcut dom */
    function _createElement(el,obj){
        var 
    _eldocument.createElement(el);
        for(var 
    prop in obj){
             
    _el.setAttribute(prop,obj[prop]);
        }
        return 
    _el;
    };
    function 
    _createTextNode(text){
        return 
    document.createTextNode(text);
    };
    function 
    _removeChild(parent,child){
        if(
    child != null){
            
    parent.removeChild(child);
        }
    };
    function 
    console(obj){
        
    this.add = function(message) {
            
    obj.innerHTML message;
        };
    };
    /* Events */
    function addEvent(elmevTypefnuseCapture){
        if (
    elm.addEventListener){
                
    elm.addEventListener(evTypefnuseCapture);
                return 
    true;
        } else if (
    elm.attachEvent) {
            var 
    elm.attachEvent('on' evTypefn);
            return 
    r;
        } else {
            
    elm['on' evType] = fn;
        }
    };
    function 
    getTarget(e){
            var 
    target window.event window.event.srcElement e.target null;
            if (!
    target){return false;}
            return 
    target;
    };
    function 
    cancelClick(e){
        if (
    window.event){
            
    window.event.cancelBubble true;
            
    window.event.returnValue false;
            return;
        }
        if (
    e){
            
    e.stopPropagation();
            
    e.preventDefault();
        }
    };

    /* Utility */
    function $(){
        var 
    elements = new Array();
        for (var 
    0;i<arguments.length;i++){
            var 
    element arguments[i];
            if (
    typeof element == 'string'){
              
    element document.getElementById(element);
            }
            if (
    arguments.length == 1){
              return 
    element;
            }
            
    elements.push(element);
          }
        return 
    elements;
    };
    function 
    trim(s) {
      while ((
    s.substring(0,1) == ' ') || (s.substring(0,1) == '\n') || (s.substring(0,1) == '\r')) {
        
    s.substring(1,s.length);
      }
      while ((
    s.substring(s.length-1,s.length) == ' ') || (s.substring(s.length-1,s.length) == '\n') || (s.substring(s.length-1,s.length) == '\r')) {
        
    s.substring(0,s.length-1);
      }
      return 
    s;
    };
    function 
    addNumberToString(str,num){           
        return 
    str.concat(parseInt(num));
    };
    /* Validation */
    function isEmpty(val) {
       return !/\
    S/.test(val);

    /* Job */
    function buildError(el,msg){
        var 
    showError_createElement(el,{id:'show-error'});
        
    showError.appendChild(_createTextNode(msg));
        return 
    showError;
    }
    function 
    ManageTag(){
        var 
    targetnull;
        var 
    seedTag'tag-name-';
        var 
    seedTagAction'action-tag-';
        function 
    getFocus(target){
            var 
    firstLitarget.getElementsByTagName('li').item(0);
            if(!
    firstLi){return}
            var 
    forFocusfirstLi.getElementsByTagName('form').item(0);
            if(
    forFocus.elements[3].getAttribute('name')=='tag_new_name'){
                
    forFocus.elements[3].focus();
            }
        }
        function 
    getTagId(e){
            var 
    targetgetTarget(e);
            
    cancelClick(e);
            var 
    elementIdtarget.getAttribute('id');
            return 
    parseInt(elementId.split("-")[2]);
        }
        function 
    deleteConfirm(tagName){
            return 
    window.confirm("You are about to delete this tag \n'"+tagName+'\'\n\'OK\' to delete, \'Cancel\' to stop.');
        }
        function 
    deleteResponse(xhr){}
        function 
    deleteRequest(e){
            var 
    currentTagIdgetTagId(e);
            
    alert(currentTagId);
        }
        function 
    updateRequest(e){
            var 
    tagNewName'';
            var 
    currentTagIdgetTagId(e);
            if(
    isNaN(currentTagId)){return;}
            var 
    currentActionElementIdaddNumberToString(seedTagAction,currentTagId);
            var 
    currentActionElement= $(currentActionElementId);
            if(!
    currentActionElement){return;}
            var 
    _formcurrentActionElement.getElementsByTagName('form').item(0);
            if(
    _form.elements[3].getAttribute('name')=='tag_new_name'){
                
    tagNewNametrim(_form.elements[3].value);
            }
            var 
    _fieldsetcurrentActionElement.getElementsByTagName('fieldset').item(0);
            var 
    showErrorbuildError('span','The field is required !');
            
    _removeChild(_fieldset,$('show-error'));
            if(
    isEmpty(tagNewName)){
                    
    _fieldset.appendChild(showError);
                    
    _form.elements[3].focus();
                    return;
            }
        }
        function 
    init(){
            if(!
    document.getElementById || !document.getElementsByTagName || !document.createTextNode){return;}
            
    target= $('ul-tag-list');
            var 
    regexDelete = /^delete\-tag\-[1-9]\d{0,9}$/;
            var 
    regexUpdate = /^update\-tag\-[1-9]\d{0,9}$/;
            var 
    inputListtarget.getElementsByTagName('input');
            for(var 
    i=0;i<inputList.length;i++){
                var 
    typeinputList.item(i).getAttribute('type').toLowerCase();
                if(
    type=='submit'){
                    
    inputList.item(i).removeAttribute('type');
                    
    inputList.item(i).setAttribute('type','button');
                    var 
    currentTagIdinputList.item(i).getAttribute('id');
                    if(
    regexDelete.test(currentTagId)){
                        
    addEvent(inputList.item(i),'click',deleteRequest,false);
                    }
                    else if(
    regexUpdate.test(currentTagId)){
                        
    addEvent(inputList.item(i),'click',updateRequest,false);
                    }
                }
            }
            
    getFocus(target);
        }
        
    init();
    }
    addEvent(window,'load',ManageTag,false);
    </script>
    </head>
    <body>
    <div id="heading">
    <h1>Test</h1>
    </div>
    <div id="container">
    <div id="navigation">
    <div id="content">
    <ul id="ul-tag-list">
    <li class="li-tag-list" id="action-tag-10">
    <form action="/yasin/PHP5/myscripts/blog2/mvc18/admin/manage-tags.php?action=action_tag" method="post">
    <fieldset>
    <input name="tag_id" type="hidden" value="10"  />
    <input name="tag_name" type="text" id="tag-name-10" class="tag-list-disabled" disabled="disabled" value="prova"  />
    <input name="tag_new_name" type="text" value=""  />
    <input name="tag_action" type="submit" value="Delete" class="tag-list-button" id="delete-tag-10"  />
    <input name="tag_action" type="submit" value="Update" class="tag-list-button" id="update-tag-10"  />
    <input name="check_insert" type="hidden" value="1188289284"  />
    </fieldset>
    </form>


    <li class="li-tag-list" id="action-tag-7">
    <form action="/yasin/PHP5/myscripts/blog2/mvc18/admin/manage-tags.php?action=action_tag" method="post">
    <fieldset>
    <input name="tag_id" type="hidden" value="7"  />
    <input name="tag_name" type="text" id="tag-name-7" class="tag-list-disabled" disabled="disabled" value="Events"  />
    <input name="tag_new_name" type="text" value=""  />
    <input name="tag_action" type="submit" value="Delete" class="tag-list-button" id="delete-tag-7"  />
    <input name="tag_action" type="submit" value="Update" class="tag-list-button" id="update-tag-7"  />
    <input name="check_insert" type="hidden" value="1188289284"  />
    </fieldset>
    </form>

    <li class="li-tag-list" id="action-tag-6">
    <form action="/yasin/PHP5/myscripts/blog2/mvc18/admin/manage-tags.php?action=action_tag" method="post">
    <fieldset>
    <input name="tag_id" type="hidden" value="6"  />
    <input name="tag_name" type="text" id="tag-name-6" class="tag-list-disabled" disabled="disabled" value="MySql"  />

    <input name="tag_new_name" type="text" value=""  />
    <input name="tag_action" type="submit" value="Delete" class="tag-list-button" id="delete-tag-6"  />
    <input name="tag_action" type="submit" value="Update" class="tag-list-button" id="update-tag-6"  />
    <input name="check_insert" type="hidden" value="1188289284"  />
    </fieldset>
    </form>

    <li class="li-tag-list" id="action-tag-3">
    <form action="/yasin/PHP5/myscripts/blog2/mvc18/admin/manage-tags.php?action=action_tag" method="post">
    <fieldset>
    <input name="tag_id" type="hidden" value="3"  />
    <input name="tag_name" type="text" id="tag-name-3" class="tag-list-disabled" disabled="disabled" value="Ajax"  />
    <input name="tag_new_name" type="text" value=""  />
    <input name="tag_action" type="submit" value="Delete" class="tag-list-button" id="delete-tag-3"  />
    <input name="tag_action" type="submit" value="Update" class="tag-list-button" id="update-tag-3"  />
    <input name="check_insert" type="hidden" value="1188289284"  />
    </fieldset>

    </form>

    <li class="li-tag-list" id="action-tag-1">
    <form action="/yasin/PHP5/myscripts/blog2/mvc18/admin/manage-tags.php?action=action_tag" method="post">
    <fieldset>
    <input name="tag_id" type="hidden" value="1"  />
    <input name="tag_name" type="text" id="tag-name-1" class="tag-list-disabled" disabled="disabled" value="php5"  />
    <input name="tag_new_name" type="text" value=""  />
    <input name="tag_action" type="submit" value="Delete" class="tag-list-button" id="delete-tag-1"  />
    <input name="tag_action" type="submit" value="Update" class="tag-list-button" id="update-tag-1"  />
    <input name="check_insert" type="hidden" value="1188289284"  />
    </fieldset>
    </form>
    [/list]
    </div>
    </div>

    <div id="footer">

    </div>
    </body>
    </html> 

    Se click su update mi appare The field is required !
    come deve essere se ci riclicco mi rimane ............
    però se ad esempio ho cliccato sul primo
    update e poi vado sul secondo invece di apparire
    The field is required ! mi appare in firebug node was not
    found perchèèè



    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  2. #2
    _removeChild(_fieldset,$('show-error'));
    La prima volta show error non ci sta.
    La seconda si però non è figlio del
    nuovo fieldset




    Ps.

    Risolto per ora in questo modo

    Codice PHP:
    function updateRequest(e){
            var 
    tagNewName'';
            var 
    currentTagIdgetTagId(e);
            if(
    isNaN(currentTagId)){return;}
            var 
    currentActionElementIdaddNumberToString(seedTagAction,currentTagId);
            var 
    currentActionElement= $(currentActionElementId);
            if(!
    currentActionElement){return;}
            var 
    _formcurrentActionElement.getElementsByTagName('form').item(0);
            if(
    _form.elements[3].getAttribute('name')=='tag_new_name'){
                
    tagNewNametrim(_form.elements[3].value);
            }
            var 
    _fieldsetcurrentActionElement.getElementsByTagName('fieldset').item(0);
            var 
    showErrorbuildError('span','The field is required !');
    var 
    firstLitarget.getElementsByTagName('li').item(0);
    //alert($('show-error'));
            
    _removeChild2(target,$('show-error'));
            if(
    isEmpty(tagNewName)){

                    
    target.insertBefore(showError,firstLi);
                    
    _form.elements[3].focus();
                    return;
            }

            
        } 
    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  3. #3
    Se click su update mi appare The field is required !
    come deve essere se ci riclicco mi rimane ............
    però se ad esempio ho cliccato sul primo
    update e poi vado sul secondo invece di apparire
    The field is required ! mi appare in firebug node was not
    found perchèèè
    Prossima volta che posto sarò un attimo
    + chiaro


    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.