簡體   English   中英

無法獲得2個文本框的值

[英]Unable to get the value of 2 textboxes

我正在嘗試使用Javascript獲得2個文本框的值。

文本框1,沒錯。

文本框2,相同的代碼,但沒有任何反應。

這是代碼

var fieldname;
fieldname = document.getElementById("div"+field).getAttribute("field");

alert(fieldname);    // RETURNS "Birthdate"
var textval;

textval = document.getElementById("textfield"+field).value;
alert(textval);      // RETURNS NOTHING

var field是文本框和div的ID。

為什么這不起作用?

發布此類html / javascript / css問題時,請隔離代碼並將其放在jsfiddle( jsfiddle.net )中。 這不僅使其他人可以更快地為您解決問題,而且經常將代碼與您的環境隔離開來可以消除可能導致意外行為的其他因素。 通常,將片段移動到jsfiddle.net的過程可以在其他人甚至沒有參與之前就顯示出問題!

其次,我建議修改調試實踐,以使自己比使用警報更輕松:

  • 使用js控制台運行瀏覽器。
  • 將調試日志記錄到console.log()
  • 為了確保console.log的正常降級,請將以下代碼添加到全局javascript:

    if(typeof(console)=='undefined'){控制台= {日志:function(){}}; }

  • 在控制台中運行js以檢查靜態代碼中出現問題的值,例如

    • 運行document.getElementById("textfield"+field).value來檢查您期望的值是否可用,如果找不到期望的值(例如,如果.value不可用),則返回該行,運行document.getElementById("textfield"+field)並展開對象以查看其內容,等等。
  • 您還可以在控制台中運行您選擇的任何任意javascript,並可以單擊訪問頁面加載所創建的可用javascript對象。 這在某種程度上也減少了在警報中手動編碼的需求。
<div id="div<?php echo $aantal;?>" field="<?php echo $rows['field'];?>">
                            <h3><?php echo $rows['name'];?>:</h3>
                            <p id="p<?php echo $aantal;?>">
                                <input type="text" id="textfield<?php echo $aantal;?>" value="<?php echo $rows['default'];?>" MAXLENGTH="<?php echo $rows['length'];?>"/><br/>
                                <input type="button" id="buttonacc<?php echo $aantal;?>" value="Verzend" onClick="acc('<?php echo $aantal;?>');"/>
                                <input type="button" id="buttonden<?php echo $aantal;?>" value="Nu niet!" onClick="den('<?php echo $aantal;?>');"/>
                            </p>
</div>

這是HTML

javascript:var val = 1;alert(document.getElementById("textfield"+val).value)

當我在firefox的javaconsole中使用此代碼時,沒有錯!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM