2011-12-18 14 views
6

Jak mogę przekazać wartości z jednej strony do innej strony html html javascriptJak przekazać wartości z jednej strony html do innej strony javascript?

Na przykład:

page1.html stronie

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html> 
<head> 
    <title>arasu</title> 
    <style type="text/css"> 
    #popupbox{ 
    margin: 0; 
    margin-left: 40%; 
    margin-right: 40%; 
    margin-top: 50px; 
    padding-top: 10px; 
    width: 20%; 
    height: 150px; 
    position: absolute; 
    background: #FBFBF0; 
    border: solid #000000 2px; 
    z-index: 9; 
    font-family: arial; 
    visibility: hidden; 
    } 
    </style> 
    <script language="JavaScript" type="text/javascript"> 
    function login(showhide){ 
    if(showhide == "show"){ 
     document.getElementById('popupbox').style.visibility="visible"; 
    }else if(showhide == "hide"){ 
     document.getElementById('popupbox').style.visibility="hidden"; 
    } 
    } 
    </script> 
</head> 
<body> 
<div > 
<form name="login" action="AgaramAnimation.html" method="get"> 
<center>Username:</center> 
<center><input name="username" size="14" /></center> 
<center>Password:</center> 
<center><input name="password" type="password" size="14" /></center> 
<center><input type="submit" name="submit" value="login" /></center> 
</form> 
</div> 
</body> 
</html> 

tu wchodzę dwie wartości nazwy użytkownika i hasła podczas kliknę przycisk Wyślij, okno podręczne zamknie się, a wartości przejdą do innej strony skryptu java podanego poniżej.

Page2.html

function gettingvalues() 
     {    
      var connection = new ActiveXObject("ADODB.Connection"); 
      var connectionstring = "Data Source="";Initial Catalog="";User ID="";Password="";Provider="""; 
      connection.Open(connectionstring); 
      var rs = new ActiveXObject("ADODB.Recordset"); 
      rs.Open("select * from logindetails where username='" **+ username +** "' and password= '" **+ password +** "'", connection); 
      if (!rs.eof) { 
       document.getElementById("").innerHTML = ""; } 
      else { 
       alert('please enter valid username and password'); 
      } 
      connection.close; 
     } 

Pls mi pomóc ..........

Odpowiedz

0

Jeśli Main.html otworzył Popup.html z window.open(), wówczas strona Popup.html może mieć odnośnik do jego okna otwierania (okno Main.html) przy użyciu window.opener. Można więc wywołać funkcję setCredentials zwrotnego zdefiniowane w Main.html pomocą

window.opener.setCredentials(...); 

przykład:

w Main.html:

// callback function called by the popup 
function setCredentials(login, password) { 
    // do what you want with the login and password 
} 

w Popup.html

// function called when the form is submitted 
function login(login, password) { 
    window.opener.setCredentials(login, password); 
    window.close(); 
} 
+0

pls zrobić kilka przykładów. – Raj

+0

Trudno jest stworzyć przykłady takich rzeczy za pomocą edytora stron WWW, takiego jak jsfiddle, ponieważ do działania potrzebne są osobne strony html. – keithwyland

0

Można odwołaj się do okna, które otworzyło twoje nowe okno (zwane oknem nadrzędnym) przez window.parent, a następnie wykonaj javascript przy użyciu tego obiektu.

Oto przykład zmuszając do strony nadrzędnej, aby odświeżyć za pomocą tego: [1]Forcing parent page refresh through javascript

Więc w twoim przypadku mogłeś powiedzieć zmienne o nazwę użytkownika i hasło w js tak i można je ustawić w oknie popup tak:

//parent window 
username = ""; 
password = ""; 

.... 

//popup window 
window.parent.username = enteredUsername; 
window.parent.password = enteredPassword; 
+0

Okno podręczne to osobna strona Html.Page.tutaj jest moje pytanie po kliknięciu linku w pliku main.html, wyskakującym oknie otwórz i wprowadź nazwę użytkownika i hasło, następnie okno wyskakujące musi się zamknąć, a nazwa użytkownika i hasło przejść do skryptu java w głównym html. – Raj

+0

Tak. Masz swoją główną stronę, od środka strony głównej wyświetlasz nową stronę html, aby uzyskać informacje o haśle. Twoja nowa strona html zawiera to odniesienie do strony nadrzędnej, która otworzyła ją przez window.parent. Zanim zamkniesz okno, ustaw nazwę użytkownika i hasło na stronie nadrzędnej, a następnie przejdź do głównej strony nadrzędnej. – vassilo

+0

@vassilo: window.parent to strona nadrzędna ramki w zestawie ramek. Nie ma nic wspólnego z wyskakującymi okienkami. window.opener to okno, które otworzyło popup. Zobacz https://developer.mozilla.org/fr/DOM/window.parent i moja odpowiedź –

2

Zakładając, że obie strony znajdują się w tej samej domenie, możesz użyć localStorage.

Popup.html:

var user = prompt('user name', ''); 
var password = prompt('password', ''); 
localStorage.user = user; 
localStorage.password = password; 

Następnie z powrotem na stronę główną:

var user = localStorage.user; 
var password = localStorage.password; 

Note 1: Nie będę komentować bezpieczeństwa (inne niż powiedzieć oczywiście don” Zrób to tak, jak zrobiłem to powyżej!)

Uwaga 2: localStorage obsługuje tylko około 92%: http://caniuse.com/namevalue-storage

Powiązane problemy