2009-11-09 11 views
1

我使用下面的代碼:無法從文本框一個facebox內使用值

<div class="example"> 
    <p> <a href="#info" rel="facebox">View Facebox</a> </p> 
    <p> <input id="Button1" type="button" value="button" onclick="Get_Value();"/></p> 
</div> 

<div id="info" style="display:none;"> 
<p><input id="text1" name="text1" type="text" value="abc"/></p> 
<p> <input id="Button2" type="button" value="button" onclick="Get_Value();$.facebox.close(); return;"/> </p>     

<script type="text/javascript"> 
function Get_Value() 
{ 
alert($('#text1').val()); 

var myTextField = document.getElementById('text1'); 
alert("You entered: " + myTextField.value) 
} 
</script> 

的問題是,在我的警惕聲明,我始終爲文本框text1獲取初始值'abc';但不包括用戶在facebox內打開時輸入的任何值。任何人都可以幫助我嗎?

+0

R' – Treby 2009-11-09 07:20:20

+0

是的,我正在使用JQuery。 – Hari 2009-11-09 07:28:27

回答

0

嗯,使用jQuery 1.3.2你的例子似乎並沒有顯示單擊鏈接(它保持不可見)時的F​​aceBox區域。我用下面的View Facebox鏈接稍微修改了你的例子,現在FaceBox正確顯示,並且對話框顯示當前信息(在Safari和Firefox中)。這有幫助嗎?

<a href="#" onClick="javascript:$('#info').show(); return false;" rel="facebox">View Facebox</a> 
+0

嗨, 我在IE 7.0中運行此代碼,它似乎在這裏工作正常。還沒有嘗試在Mozilla上運行它。我也使用相同的版本jquery 1.3.2。 反正謝謝你的回覆:-) – Hari 2009-11-09 10:08:28

+0

好吧,但你有沒有嘗試過改變標籤?它也應該解決你在IE7中的問題。 – 2009-11-09 10:22:09

0

alert($('.content #text1').val());嘗試,這是因爲facebox在表格中顯示它的「盒子」,並保持相同的ID創建一個潛水的「複製」(你可以看到,螢火蟲發生)

編輯:工作的火狐,Chrome和IE7例如:

<html> 
<head> 
    <title>unable to get value from textbox used inside a facebox</title> 
    <script type="text/javascript" src="jquery-1.3.2.min.js"></script> 
    <script type="text/javascript" src="facebox/facebox.js"></script> 
    <link rel="stylesheet" src="facebox/facebox.css"/> 
    <script type="text/javascript"> 
    jQuery(document).ready(function($) { 
     $('a[rel*=facebox]').facebox(); 
    }); 

    function Get_Value() { 
     alert($('#facebox input:first').val()); 
    } 
    </script> 
</head> 
<body> 
    <div class="example"> 
     <p><a href="#info" rel="facebox">View Facebox</a></p> 
     <p><input id="Button1" type="button" value="button" 
        onclick="Get_Value();"/></p> 
    </div> 

    <div id="info" style="display:none;"> 
     <form> 
      <input name="text1" type="text" /> 
      <input type="button" value="button" 
        onclick="Get_Value();$.facebox.close();"/> 
     </form> 
    </div> 
</body> 
</html> 
+0

嗨,我害怕,我嘗試使用 alert($('。content#text1')。val()); 但它總是在警報消息中給出「未定義」的輸出。 – Hari 2009-11-09 10:05:11

+0

這適用於我與jQuery 1.3.2和Firefox 3.6,但這種插件的工作方式是不好的恕我直言。我可以重現IE7上的「不工作」 – 2009-11-09 10:31:13

+0

也非常感謝你。你做對了。 Regards, Hari – Hari 2009-11-09 10:55:58

相關問題