2010-06-18 50 views
0

我有一個文本框的數組,每個按鈕都在右側,當按下文本時應該使用Jquery在新窗口上顯示。對於演示,你可能已經看到jQuery的插件,它顯示在新窗口中的圖像。我想要完全相同,但不是圖像,我想顯示文本框的文本框時,其按鈕被按下。使用Jquery在新窗口中獲取文本框的值

請告訴我我該怎麼做?

+0

你在說什麼窗口或對話框? – 2010-06-18 18:05:41

回答

0

你可以這樣說:

var win = window.open(); 
var doc = win.document; 
doc.write($('#textbox_id').val()); 
doc.close(); 
0

testopen.html:

<html> 
     <head></head> 
     <body> 
     <div id="field1"></div> 
     <div id="field2"></div> 
     </body> 
</html> 

testopener.html:

<!DOCTYPE html> 
<html> 
<head> 
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js" type="text/javascript"></script> 
</head> 
<body> 

    <input id="field1" /> 
    <input id="field2" /> 

    <button id="opentest">test</button> 
</form> 

</body> 

<script type="text/javascript"> 

$(function(){ 

    var winopen = null; 

    $("#opentest").bind("click", function(){ 

      if (winopen == null || winopen.closed){ 
      winopen = window.open("testopen.html","", "left=100,top=100,width=250,height=150"); 
     } 

     var field1 = $("#field1").val(), 
      field2 = $("#field2").val(), 
      ntry = 3, 
      sendMsg = function(){ 

       if (winopen.document.readyState != "complete"){ 

        if (ntry >= 0) 
         setTimeout(sendMsg, 1000); 

        ntry--; 
        return; 

       } 

       $(winopen.document.body).find("#field1").html(field1); 
       $(winopen.document.body).find("#field2").html(field2); 

      } 

     sendMsg(); 

    }); 

}); 

</script> 

鏈接

http://jquery.com/demo/thickbox/

http://www.no-margin-for-errors.com/projects/prettyphoto-jquery-lightbox-clone/

http://www.ericmmartin.com/projects/simplemodal/

+0

你已經寫了一個非常好的代碼,但可能是我正在尋找對話框或窗口,但它允許我進行更改,然後將更改發回原始文本框。其次,我正在尋找與jquery lightbox插件相同的效果。可能嗎? 非常感謝你的代碼和時間 – user370564 2010-06-19 07:28:50

0

如果你想顯示ONY文本,我強烈建議,而不是使用插件對話框。
有很多插件來實現這一點,它支持顯示圖像和文本。

http://fancybox.net/

http://colorpowered.com/colorbox/

http://dev.iceburg.net/jquery/jqModal/#

http://jqueryui.com/demos/dialog/

+0

是的,你是正確的事實我正在尋找對話框,我已經通過鏈接,我認爲fancybox是我所需要的。 非常感謝。 – user370564 2010-06-19 07:37:46

+0

凱,告訴我是否可以在內聯HTML中運行一個小的ajax腳本。例如,我使用「內聯HTML」獲得textvalue,然後在同一內聯HTML(彈出窗口)中使用Ajax修改文本。這全部可能嗎? – user370564 2010-06-19 07:52:50

0

你可以做這樣的事情:

$('input#mybutton').click(function() { 
    var text = $('textarea#mytextarea').val(); 
}); 

所以,當按鈕clicke d,textarea的內容將被收集到一個變量中。之後,你只需要注入變量的內容您的目的地:

  1. 警報()
  2. 插件,彈出窗口
  3. 定義彈出窗口
  4. 打開一個新的瀏覽器窗口的內容 等。 ..