 
 // Functie om een simpele postback te geven op een enter in een textbox
 // parameter: evt is de keypress event
 // parameter: postbackLink is de 'korte' naam/id van de linkbutton die de echte postback veroorzaakt
 // typisch gebruik: <asp:TextBox runat="server" ID="PlaatsTextBox" onKeyPress="javascript:PostbackOnEnter(event,'ZoekenLinkButton');" />
 function PostbackOnEnter(evt, postbackLink){
    PostbackOnEnterMetVoorwaarde(evt, postbackLink, true);
}

// Functie om een simpele postback te geven op een enter in een textbox met een voorwaarde om te checken voordat de porstback uitgevoerd wordt
// parameter: evt is de keypress event
// parameter: postbackLink is de 'korte' naam/id van de linkbutton die de echte postback veroorzaakt
// parameter: een functie of expressie die een boolean waarde teruggeeft - als de waarde true is, wordt de postback uitgevoerd, anders niet.
// typisch gebruik: <asp:TextBox runat="server" ID="PlaatsTextBox" onKeyPress="javascript:PostbackOnEnterMetVoorwaarde(event,'ZoekenLinkButton', new function(){if (this.value==null) return false; return true;});" />
function PostbackOnEnterMetVoorwaarde(evt, postbackLink, voorwaardeFunctie){
    evt = (evt) ? evt : event;
    var charCode = (evt.which) ? evt.which : evt.keyCode;
    if (charCode==13){
        if (voorwaardeFunctie){
            var postbackButton = getPostbackButton(postbackLink); 
            if (postbackButton){
               __doPostBack(postbackButton,'');
            }
        }
    }
}

//Functie om het 'lange' unieke asp.net id op te halen op basis van het 'korte' id dat aan PostbackOnEnter is meegegeven
//NB: dit kan tot problemen leiden als er twee links met hetzelfde 'korte' id op een pagina staan
//Vervolgens worden alle '_' in het id vervangen door '$', want dat wordt bij postback gebruikt  
function getPostbackButton(postbackLink){
    var shortID = postbackLink;
    for (var i=0;i<document.links.length;i++){
        var thisName = document.links[i].id;
        var thisNameEnd = thisName.substring(thisName.length - shortID.length,thisName.length);
        
        //vervang '_' door '$'
        if (thisNameEnd==shortID){
            while (thisName.indexOf("_")>-1){
               thisName = thisName.replace("_","$");
            }
            return thisName;
        }
    }
    
    //return null als niet gevonden
    return null;
}

//Helper functie, omdat JavaScript zelf geen trim functie heeft
function trim(value) {
  value = value.replace(/^s/,'');
  value = value.replace(/s$/,'');
  return value;
}

