获取动态生成的文本区域的值

Posted

技术标签:

【中文标题】获取动态生成的文本区域的值【英文标题】:Get values of textareas generated dynamically 【发布时间】:2011-02-01 22:01:42 【问题描述】:

在下面的代码中,textareas 是动态生成的,现在如何在valid() 函数中获取这些值进行验证..

  <script>
   function valid()
    
         //get all textarea vales for validation
    


  function add(col_det)
  
 var row = '<tr>';
row += '<td>';
row += '<textarea rows = "8" cols = "8" class = "input" WRAP id="row_details'+r_count+'" name ="row_details'+r_count+'"></textarea>';
row += '</td>';
for (var i=0;i<col_det.length;i++)

   row += '<td> <div id = "div_content_bold"> <textarea rows = "2" cols = "8" class = "input" id="c_details'+c_count+'" name="col_details'+l_count+'" WRAP ></textarea> </div> </td>';

 
 row += '<td></td>';
 row += '</tr>';
return row; 
 



 $(document).ready(function() 
 var cnt = '<input type="text" name="title" id="title" ><br><br>';
 cnt += '<table cellspacing="0" cellpadding="0" border="1"  id="l_table">';
 cnt += '<tr>';
 cnt += '<th >Category</th>';
 cnt +=  headers(col_data); 
 cnt += '<th >Grade obtained</th>';
 cnt += '</tr>';
 for(var i=0;i<criteria;i++)
 
   cnt += add(col_data,i);
 
 cnt += '</table>';
 $('#content').append(cnt);

 );
</script>
<form action="create/" method="post" name="aa">
<div id="content"></div>
<table>
 <tr><td>
 <input type="submit" value="Save" id="Save" onclick="javascript:var   ret=validate(row_c,c_count);return ret;"/></td></tr>

【问题讨论】:

【参考方案1】:

如果它们是动态分配的,请添加类以便您选择它们​​。

 $('textarea.generated').each (function(i)  );

【讨论】:

【参考方案2】:

您可以遍历页面上的所有文本区域并使用.each验证内容

$('textarea').each(function(i) // do validation here using $(this).val() );

【讨论】:

你确定吗,因为即使我使用普通 javascript 循环,我也会动态生成它。我没有得到值.. 我刚刚对此进行了测试,它对我有用。我使用的是 chrome 仅供参考,所以不确定所有浏览器。

以上是关于获取动态生成的文本区域的值的主要内容,如果未能解决你的问题,请参考以下文章

TinyMCE 在动态生成的文本区域上不可点击和编辑

单击时在 Java 中添加类似动态文本区域的对象

如何在更改时动态显示文本区域的值? [关闭]

Javascript / jQuery 获取我正在输入的文本区域的 id [重复]

如何删除特定的文本区域字段?

如何更改可调整大小的文本区域的光标?