Làm thế nào để lấy giá trị từ một window con về window chính?

Tại trang web e có dùng lệnh Javascript để tạo ra một cửa sổ nhỏ( window.open … ) . Tại cửa sổ nhỏ này e có dùng một đoạn html:
<form><input type="textbox" name="name" /> <input type="submit" value="OK" /></form>
Giờ làm sao để window chính nhận được giá trị biến name này ạ

Để thao tác với cửa sổ chính thì dùng opener.
Với cửa sổ con thì bạn đặt biến khi dùng open.

Mình không hiểu ý bạn, bạn hỏi trong của sổ dùng html, mà lại hỏi biến name? hay là code bạn không đặt trong khung code nên bị xóa?

Xem thử ví dụ sau, có thể sẽ giải quyết được vấn đề của bạn.

<!DOCTYPE html>
<html>
<body>

<button onclick="genPopup();">Run</button>

<script>
var dnhUrl = "daynhauhoc.com";

function genPopup() {
    var popup = window.open("", "DNH", "width=300,height=100");

    popup.document.write("<p>" + popup.opener.dnhUrl + "</p><script>var loaded = true;<\/script>");
    popup.document.title = popup.name;

    if (popup.window.loaded) {
        popup.opener.document.write("<p>" + popup.name + " Loaded!</p>");
    } else {
        popup.opener.document.write("<p>" + popup.name + " Not loading!</p>");
    }
}
</script>

</body>
</html>

http://jsfiddle.net/baivong/bo7d22o7/embedded/result,js,html/
Ví dụ trên jsfiddle mình có thay đổi vài chỗ, để kiểm tra trong trường hợp popup bị chặn.

3 Likes

ý mình là cái cửa sổ popup có form ( có textbox tên là name) giờ mình muốn lấy giá trị của textbox này cho cửa sổ chính ạ

Viết như bình thường, thêm popup. vào trước (popup là tên của biến khi gọi window.open).

http://jsfiddle.net/baivong/bo7d22o7/1/embedded/result,js,html/

2 Likes

Cảm ơn bạn nhé :grinning:

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?