2016-04-11 10 views
0

Fehler bei der vorherigen Funktion, bei der letzten Suche der vorherigen Funktion. Es funktioniert alles, aber wenn ich die letzte Suche der vorherigen Taste gehe. es zeigt Fehler an. Es sollte "No Match" wie bei den letzten gesuchten Daten mit der nächsten Schaltfläche angezeigt werden.Google App Script Search Benutzeroberfläche Nächste und vorherige Funktion

`function next(eventInfo){ 

    var app = UiApp.getActiveApplication(); 
    var row=ss.getActiveRange().getRowIndex();  
    var lastrow = ss.getLastRow(); 

     var start = Number(eventInfo.parameter.hidden)+1; 
    var hidden = app.getElementById("hidden");     
    var data = ss.getRange(2,1,lastrow,6).getValues();// get the 3 columns of data 
     for(nn=start;nn<data.length;++nn){ ;// iterate trough 
     if(data[nn].toString().toLowerCase().match(item.toString())==item.toString()&&item!='') {;// if a match is found in one of the 3 fields, break the loop and show results 
    f1box.setText(data[nn][2]);   
    f2box.setText(data[nn][3]); 
    f3box.setText(data[nn][4]); 
    f4box.setText(data[nn][5]); 
     app.getElementById("previd").setEnabled(true).setText("Previous");                         
     app.getElementById("nextid").setEnabled(true).setText("Next");                         
     app.getElementById("txbid").setEnabled(true).setText("Search");                        
      ss.getRange(nn+2,2).activate(); 
      lbl.setText("found from"+data[nn][0]+"-"+data[nn][1]+", click Next").setEnabled(true); 
      hidden.setValue(nn.toString()) 
      break;}} 
    return app; 
} 


function previous(eventInfo){ 

var app = UiApp.getActiveApplication(); 
var row=ss.getActiveRange().getRowIndex();  
var lastrow = ss.getLastRow();`   

var start = Number(eventInfo.parameter.hidden)-1; 
     var hidden = app.getElementById("hidden");     
     var data = ss.getRange(2,1,lastrow,6).getValues();// get the 3 columns of data 
      for(nn=start;nn<data.length;--nn){ ;// iterate trough 
      if(data[nn].toString().toLowerCase().match(item.toString())==item.toString()&&item!='') {;// if a match is found in one of the 3 fields, break the loop and show results 
     f1box.setText(data[nn][2]);   
     f2box.setText(data[nn][3]); 
     f3box.setText(data[nn][4]); 
     f4box.setText(data[nn][5]); 
      app.getElementById("previd").setEnabled(true).setText("Previous");                         
      app.getElementById("nextid").setEnabled(true).setText("Next");                         
      app.getElementById("txbid").setEnabled(true).setText("Search");                        
       ss.getRange(nn+2,2).activate(); 
       lbl.setText("found from"+data[nn][0]+"-"+data[nn][1]+", click Next").setEnabled(true); 
       hidden.setValue(nn.toString()) 
       break;}} 
return app; 
} 

Antwort

Verwandte Themen