2015-10-19 60 views
-1

我可以使用.text()來獲取原始文本,但更新的文本不會被.val()命令抓取。有任何想法嗎?JQuery val()undefined for textarea with variable selector

function submitText(subText){ //import submit button id 
var boxID="txtArea_"+subText; //rename so that it is the textArea id 
alert(boxID); //Alerts as the correct id 
alert($("#".boxID).val()); //still undefined 
} 

HTML是

<textarea id="txtArea_29__KPIs_0" style="width:100%;">First Comment     </textarea> 

首先警報返回 「txtArea_29__KPIs_0」,第二個是未定義

回答

3

您已經使用PHP的字符串拼接。改爲使用+運算符。

正確的方法是:$("#"+boxID).val();在JS字符串連接的

方式:

var a = 'a'; 
var b = 'b'; 

var result = a+b; 
var result = [a,b].join(''); 
var result = a.concat(b); 
1

你應該串聯

alert($("#"+boxID).val()); //still undefined 
0

這應該是

alert($("#" + boxID).val()); 

而不是alert($("#".boxID).val());

+0

謝謝大家。對不起,5年後回到這個東西,慢慢來。 JS中沒有顯示任何錯誤... – mrfish

0

使用「+」號連接jquery選擇器而不是「。」。

alert($("#" + boxID).val());