如何使用javascript从TextArea获取值?

neu*_*tix 2 html javascript jquery

那么这个问题可能看起来像谷歌容易找到的问题,但由于某种原因,所有的解决方案都没有为我工作.我想做的就是检查textarea中是否有文本.

JS片段:

var PrzedDzier = document.getElementById('ctl00_m_g_87871370_ce46_4f47_b1eb_614d0106535d_ff105_1_ctl00_ctl00_TextField');   
var a = PrzedDzier.val();
if(a == "")
{
  alert('FU');
  result = false;
}
Run Code Online (Sandbox Code Playgroud)

HTML宝贝:

<textarea dir="none" class="ms-long" title="PDzier" id="ctl00_m_g_87871370_ce46_4f47_b1eb_614d0106535d_ff105_1_ctl00_ctl00_TextField" cols="20" rows="2" name="ctl00$m$g_87871370_ce46_4f47_b1eb_614d0106535d$ff105_1$ctl00$ctl00$TextField"></textarea>
Run Code Online (Sandbox Code Playgroud)

调试器(Firebug)停止工作,var a = PrzedDzier.val();所以我认为val()方法有问题...

Jam*_*ill 8

您已将对象检索为JS对象,而不是jQuery对象.您需要使用jQuery ID选择器来检索jQuery对象:

var PrzedDzier = $("#ctl00_m_g_87871370_ce46_4f47_b1eb_614d0106535d_ff105_1_ctl00_ctl00_TextField");
var a = PrzedDzier.val();
if(a == "")
{
  alert('FU');
  result = false;
}
Run Code Online (Sandbox Code Playgroud)

如果您想使用纯JS访问文本,只需使用value属性:

PrzedDzier = document.getElementById('ctl00_m_g_87871370_ce46_4f47_b1eb_614d0106535d_ff105_1_ctl00_ctl00_TextField');   
var a = PrzedDzier.value;
if(a == "")
{
  alert('FU');
  result = false;
}
Run Code Online (Sandbox Code Playgroud)