如何使用jquery从textarea中提取表单元素

时间:2014-08-23 19:26:28

标签: javascript jquery html

我试图谷歌但没有出现。我有表单生成器,用于构建表单并生成表单结构。然后我将复制粘贴到我的textarea中并将整个html保存到mysql数据库中。现在我想修改那些数据,所以我需要得到textarea值并过滤输入元素。

我使用过这样的东西。

 $(document).ready(function(){
    $("#btn").click(function(){
      $("#ta").each($('input,select,textarea', '#myform'),function(k){
              alert(k+' '+$(this).attr('name'));
       });
     });
   });

但它并没有让我感到害怕。我知道我做错了,因为我没有先获得textarea值而不是解析它。所以我做了这样的事情:

 $(document).ready(function(){
    $("#btn").click(function(){
      var a = $("#ta").val();
        a.each($('input,select,textarea', '#myform'),function(k){
        alert(k+' '+$(this).attr('name'));
       });
     });
   });

但这也无法奏效。任何建议。

2 个答案:

答案 0 :(得分:0)

您必须使用val1 jquery来解析textarea的值(比如说var a = $(val1))并将其保存在变量中,然后您可以提取出您想要的任何dom元素。

喜欢a.find('input[type="text"]')

答案 1 :(得分:0)

您在使用id =“ta”调用的单个元素上调用每个元素。 ID只能在文档中使用一次。由于您没有提供更多源代码,因此无法查看您的问题是否存在。如果它是一个单一元素,你在尝试每个元素?

$("#ta").each($('input,select,textarea', '#myform'),function(k){
    alert(k+' '+$(this).attr('name'));
});

我建议尝试以下

$('input, select, textarea').each(function(k){
    alert(k+' '+$(this).attr('name'));
});