[英]What is the JavaScript equivalent of the below jQuery code snippet?
[英]What is the JQuery code for this snippet?
我有一個父頁面,其中包含一個文本區域和一個打開子窗口的鏈接。 子窗口具有另一個文本區域和一個按鈕。 用戶在子窗口的文本區域中輸入一些文本,然后單擊按鈕,將觸發一個javascript,該javascript用子窗口的文本區域的內容更新父窗口中文本區域的內容,並關閉子窗口。
我目前正在用javascript執行此操作,並且效果很好,但是由於我們將很快轉向jQuery,因此如何使用jQuery實現相同的效果。
page1.html
----------
<script type="text/javascript">
function newwin() {
window.open('page2.html','','width=600');
}
</script>
<body>
<textarea id='t1'>
<a href="javascript:void(0)" onclick="newwin();">Click here</a>
</body>
page2.html
----------
<script type="text/javascript">
function updateparent() {
window.opener.document.getElementById('t1').value = document.getElementById('t2').value;
window.close();
}
</script>
<body>
<textarea id='t2'>
<input type="submit" onclick="updateparent();">
</body>
有趣的問題。
正如Domonic Roger所提到的,如果它起作用了,那么您可能想離開它。
對我來說,問題不是“此代碼段的JQuery代碼是什么?”,而是我如何使用jQuery實現相同的解決方案。
有時,這不只是簡單的代碼替換的簡單情況。 采取以下措施:
function updateparent() {
window.opener.document.getElementById('t1').value = document.getElementById('t2').value;
window.close();
}
現在,jQuery代碼可能是這樣的:
function updateparent() {
window.opener.$("#t1").val($("#t2").val());
window.close();
}
但是,我不會這樣做。 我將使用jQuery UI中可用的彈出窗口功能或某些插件(例如blockui )來實現彈出窗口。
另外,此代碼:
<body>
<textarea id='t2'>
<input type="submit" onclick="updateparent();">
</body>
在jQuery中,我們鼓勵使用事件的后期綁定,因此任何內聯JavaScript都可以使用:
<body>
<textarea id='t2'>
<input id="MyInput" type="submit">
</body>
准備好文檔后,將其綁定:
$(document).ready(function(){
$("#MyInput").click(updateparent());
});
一種更“ jquery”的方法來做到這一點:
page1.html
----------
<script type="text/javascript">
$(document).ready(function() {
$("#link1").click(function(){
window.open('page2.html','','width=600');
});
});
</script>
<body>
<textarea id='t1'>
<a id="link1" href="#">Click here</a>
</body>
page2.html
----------
<script type="text/javascript">
$(document).ready(function() {
$("#link1").click(function(){
window.opener.jQuery("#t1").val($("#t2").val());
window.close();
});
});
</script>
<body>
<textarea id='t2'>
<input type="submit" id="link2">
</body>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.