2012-07-03 31 views
1

我打開一個小型模式對話框,使用facebox與表單,然後嘗試訪問該窗體上的文本字段中的值與JavaScript。這是HTML代碼 -Javascript/Facebox getElementById不返回任何東西

<div id="dialog-form95" style="display:none"> 
<div class="block"> 
    <form action="" method="post" name="form95"> 
    <h3>Setting URL</h3> 
    <p></p> 
    <p><label>URL : </label></p><input type="text" class="text" id="du95" name="url"/> 
    <p><input type="submit" class="submit small" value="save" onclick="updateUrl(95,109); return false;"/></p> 
    </form> 
</div> 
</div> 

這是的onclick的JavaScript -

function updateUrl(bid, cid){ 
    alert(document.getElementById('du'+bid).value); 
} 

我甚至嘗試硬編碼 「du95」。每當我更新文本框中的任何內容並提交時,它都會顯示一個空白的警報對話框。在js控制檯中也沒有顯示任何內容。

回答

1

那是因爲它沒有價值。嘗試看看會發生什麼:

<input type="text" class="text" id="du95" name="url" value="testing" /> 
+0

是的,現在它會如果我改變它提醒「測試」,而不是字段值。 –

+0

它會提醒「測試」即使我編輯它。我需要爲js處理採取字段值 –

+0

一旦您更改了值,它不應該繼續提醒「測試」。確保你在* javascript之前更改了值*。 –

0

由於某種原因,您在容器格中有display: none

移除,它似乎在向的jsfiddle正常工作後:http://jsfiddle.net/8bSdK/

+0

是的,看起來你是對的。但需要一箇中間解決方案,因爲它是從另一個按鈕彈出的模式對話框。所以它必須是display:none,直到另一個腳本顯示它。 –