2011-12-18 38 views
6

Làm thế nào tôi có thể vượt qua giá trị từ một trang html đến một trang html javascriptCách chuyển Biểu mẫu giá trị Một trang html sang một trang html javascript khác?

Ví dụ:

trang Page1.html

<!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> 

đây tôi nhập tên người dùng và mật khẩu khi hai giá trị tôi nhấp vào nút gửi cửa sổ bật lên sẽ đóng và các giá trị chuyển sang một tập lệnh java khác được đưa ra dưới đây.

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; 
     } 

Xin vui lòng giúp tôi ..........

Trả lời

0

Nếu Main.html đã mở Popup.html với window.open(), sau đó trang Popup.html có thể có một tham chiếu đến cửa sổ mở của nó (cửa sổ của Main.html) sử dụng window.opener. Vì thế, có thể gọi một hàm callback setCredentials quy định tại Main.html sử dụng

window.opener.setCredentials(...); 

Ví dụ:

trong Main.html:

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

trong Popup.html

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

hãy thực hiện một số ví dụ. – Raj

+0

thật khó để làm ví dụ về điều gì đó như thế này với trình soạn thảo web như jsfiddle, vì nó yêu cầu các trang html riêng biệt hoạt động. – keithwyland

0

Bạn có thể tham khảo cửa sổ đã mở cửa sổ mới của bạn (được gọi là cửa sổ chính) qua window.parent và sau đó thực thi javascript của bạn bằng cách sử dụng đối tượng đó.

Dưới đây là một ví dụ về buộc một trang mẹ để làm mới sử dụng này: [1]Forcing parent page refresh through javascript

Vì vậy, trong trường hợp của bạn, bạn có thể nói biến cho tên người dùng và mật khẩu trong js của bạn như thế này và bạn có thể đặt chúng trong cửa sổ popup như vậy:

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

.... 

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

Cửa sổ bật lên là Html.Page riêng biệt.đây là câu hỏi của tôi khi tôi nhấp vào một liên kết trong main.html, cửa sổ popup mở tôi nhập tên người dùng và mật khẩu sau đó cửa sổ popup phải đóng và tên người dùng và mật khẩu vượt qua để java script trong html chính. – Raj

+0

Có. Bạn có trang chính của bạn, từ bên trong trang chính của bạn, bạn bật lên một trang html mới để nhận được thông tin mật khẩu. Trang html mới của bạn chứa tham chiếu này đến trang cha mẹ đã mở nó qua window.parent. Trước khi bạn đóng cửa sổ bật lên, bạn đặt tên người dùng và mật khẩu trong trang cha và sau đó tiếp tục trong trang chính của phụ huynh. – vassilo

+0

@vassilo: window.parent là trang mẹ của một khung trong bộ khung. Không có gì để làm với cửa sổ bật lên. window.opener là cửa sổ mở cửa sổ bật lên. Xem https://developer.mozilla.org/fr/DOM/window.parent và câu trả lời của tôi –

2

Giả sử hai trang của bạn nằm trên cùng một miền, bạn có thể sử dụng localStorage.

Popup.html:

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

Sau đó trở lại trong trang chính:

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

Note 1: Tôi sẽ không bình luận về an ninh (trừ để nói tất nhiên don' t làm như tôi đã làm ở trên!)

Lưu ý 2: localStorage chỉ hỗ trợ 92%: http://caniuse.com/namevalue-storage

Các vấn đề liên quan