2017-06-13 6 views
1

Ich habe 3 Dateien.Wie Textbox-Wert von einer Seite zu einem anderen übergeben?

index.html code.gs und display.html

index.html

<!DOCTYPE html> 
<html> 
<head> 
<style> 
    .my_text 
      { 
       font-family: Tahoma; 
       font-size:  13px; 
       font-weight: normal; 
      } 
</style> 


<base target="_top"> 
<script> 
    function displayMessage() { 
     var searchTerm; 
     searchTerm = document.getElementById('idSrchTerm').value; 
     console.log('searchTerm: ' + searchTerm); 
     google.script.run.withSuccessHandler(handleResults).processForm(searchTerm.replace("'","\'")); 
     } 


      function handleResults(results){  
     var length=results.length; 
      var table = document.getElementById("output"); 
      var count = document.getElementById("count"); 

     for(var i=0;i<length;i++) 
     { 




     var item=results[i]; 
     item=item.split("|~|"); 

    count.innerHTML = "Total Records Found : " + length; 
    table.innerHTML +="</br><a href='"+item[1]+"' target='_blank'>"+item[0]+"</a></br> <B>Owner: </B>" +item[3]+ " </br><B>Last modified: </B>"+item[2]+ " </br> <B>File Size: </B>"+item[4]+"</br>"; 



     } 


     } 
function clearBox(elementID) 
{ 
    document.getElementById("output").innerHTML = ""; 
    document.getElementById("count").innerHTML = ""; 
} 










</script> 




<style> 
table, th, td { 
    border: 1px solid black; 
} 
</style> 

</head> 

<body> 


<div class="container"> 


    <p class = "my_text"><input type="text" id="idSrchTerm" name="search" class = "my_text" > 
    <input type="button" value="Search Drive" name="submitButton" class = "my_text" onClick="clearBox(); displayMessage();" /> 
<?var url = getScriptUrl();?><a target="_blank" href='<?=url?>?page=display'><input type="button" value="Open In New Tab" name="submitButton" class = "my_text" onClick="clearBox(); displayMessage();" value='display.html'/></a> 

</div> 

<div id = "count" class = "my_text"> 
</div> 

<div id ="output" class = "my_text"> 
</div> 

</body> 
</html> 

code.gs

var scriptProperties = PropertiesService.getScriptProperties(); 


function doGet(e) { 

    Logger.log(Utilities.jsonStringify(e)); 
    if (!e.parameter.page) { 
    return HtmlService.createTemplateFromFile('index').evaluate(); 
    } 
    return HtmlService.createTemplateFromFile(e.parameter['page']).evaluate(); 
return HtmlService.createHtmlOutputFromFile('display'); 
} 


function getScriptUrl() { 
    var url = ScriptApp.getService().getUrl(); 
return url; 
} 


function SearchFiles(searchTerm) { 
    var searchFor ="fullText contains '" + searchTerm + "'"; //single quotes are needed around searchterm 



var userProperties = PropertiesService.getUserProperties(); 
userProperties.setProperty('SQuery', searchTerm); 


var userProperties = PropertiesService.getUserProperties(); 
var SQuery = userProperties.getProperty('SQuery'); 
Logger.log(SQuery); 




    var names = []; 
    var files = DriveApp.searchFiles(searchFor); 
    var searchQ = searchTerm; 
    while (files.hasNext()) { 
    var file = files.next(); 
    var fileId = file.getId();// To get FileId of the file 
    var lm = file.getLastUpdated(); 
    var OType = file.getOwner().getName(); 
    var fsize = file.getSize() 
    var name = file.getName()+"|~|"+file.getUrl()+"|~|"+lm+"|~|"+OType+"|~|"+fsize+"|~|"+searchQ; // Im concatenating the filename with file id separated by |~| 
    names.push(name); // adding to the array 
    Logger.log(file.getUrl()); 
    } 
    return names; // return results 


} 


// Process the form 
function processForm(searchTerm) { 
    var resultToReturn; 
    Logger.log('processForm was called! ' + searchTerm); 
    resultToReturn = SearchFiles(searchTerm); 
    Logger.log('resultToReturn: ' + resultToReturn); 
    return resultToReturn; // return the results 
} 

display.html

<!DOCTYPE html> 
<html> 
<head> 
<style> 
    .my_text 
      { 
       font-family: Tahoma; 
       font-size:  13px; 
       font-weight: normal; 
      } 
</style> 


<base target="_top"> 
<script> 
    function displayMessage() { 
     var searchTerm; 
     searchTerm = document.getElementById('idSrchTerm').value; 
     console.log('searchTerm: ' + searchTerm); 
     google.script.run.withSuccessHandler(handleResults).processForm(searchTerm.replace("'","\'")); 
     } 


      function handleResults(results){  
     var length=results.length; 
      var table = document.getElementById("output"); 
      var count = document.getElementById("count"); 

     for(var i=0;i<length;i++) 
     { 




     var item=results[i]; 
     item=item.split("|~|"); 

    count.innerHTML = "Total Records Found : " + length; 
    table.innerHTML +="</br><a href='"+item[1]+"' target='_blank'>"+item[0]+"</a></br> <B>Owner: </B>" +item[3]+ " </br><B>Last modified: </B>"+item[2]+ " </br> <B>File Size: </B>"+item[4]+"</br>"; 



     } 


     } 
function clearBox(elementID) 
{ 
    document.getElementById("output").innerHTML = ""; 
    document.getElementById("count").innerHTML = ""; 
} 










</script> 




<style> 
table, th, td { 
    border: 1px solid black; 
} 
</style> 

</head> 

<body onload ="clearBox(); displayMessage();"> 


<div class="container"> 


    <p class = "my_text"> 

    <input type="text" id="idSrchTerm" name="search" class = "my_text" value = "outing" > 


</div> 

<div id = "count" class = "my_text"> 
</div> 

<div id ="output" class = "my_text"> 
</div> 

</body> 
</html> 

tatsächlich die Ausgabe von index.html und output.html sind die gleichen sie haben Textbox und der andere hat einen Knopf. Dieser Code ist mein einziges proble hier arbeiten, wie ich textbox value von index.html zu textbox value von display.html

Diese passieren kann, ist, was index.html wie

enter image description here

aussieht und das ist, was display.html wie

sieht

enter image description here

mein einziges Ziel hier ist, Textbox Wert aus übergeben ein Ort zum anderen und von dem ich meinen Code <body onload> Das ist alles, was ich Textbox Wert von einem anderen Textbox von anderer Website TYSM für

Hilfe passiere

Antwort

0

Ty lokale Speicher

die Variable

speichern müssen laufen
localStorage.setItem('NameOfLocalStorage',Value); 

Holen Sie sich den Wert

localStorage.getItem('NameOfLocalStorage'); 
+0

Sir retrive verstehen kann nicht, wie kann ich dies in meinem Code hinzufügen? –

+0

Ich mache es funktioniert, aber in jedem Fall versuche ich neue Daten hinzufügen die alte zeigt –

0

Sie können Daten über eine Verbindung, beispielsweise an:

window.location.href = "output.html?" + encodeURIComponent('blah blah bla') 

und man kann ich Output.html Daten in

var data = decodeURIComponent(window.location.search.substr(1)) 
+0

können Sie bitte mehr Sir erarbeiten? Wie kann ich das in Google-Website einbetten? –

Verwandte Themen