需要使用jquery对文本字段的部分名称进行匹配并返回结果

时间:2017-06-06 16:54:51

标签: jquery forms dynamic

我目前有一个表格设置,用户输入数字,并根据输入的数字,通过jquery,显示一系列文本框。

文本框显示的代码如下:

for(i=0;i<count;i++)
{

ch.innerHTML = ch.innerHTML +"<div style='width:120px;float:left;'>Left    
Slide (size 6):</div><div style='float:left;width:100px;'> <input 
type='text' class='txt' style='width:80px;margin-right:10px;font-size:14px !
important;' name='six"+ i+"'></div>";

}

(有几个,从这个例子大小为6,直到10号。)

jquery基本上经过并选择所有输入文本框的值,加入它们并将它们添加到表单上的隐藏字段,然后将其提交给后端。

(我只有一个字段可以使用,并且有很多信息可以通过一个字段。)

执行此部分的代码如下:

$(function() {
        $("#shineon").click(function(event) {               
            var data = [];

            var form = $("form :input[type=text]");



            $.each(form, function(e, textBox) {


                if (e > 0) {
data.push($.trim(textBox.value));
 }

            });


            $("#mybond").val(data.join(" "));


        });
    });

这回归的几乎就是我所需要的,即动态生成的所有文本框的值。

它返回输入如下:

textone texttwo textthree textfour

但是,我真的需要以更具体的方式加入它们 - 这样我就可以捕获所有值,但是基于部分名称匹配(“6”),其中我的文本字段被命名为:six1 six2 six3等等上...

这样我的输入返回如下所示:

 six1 - textone texttwo
 six2 - textone texttwo
 six3 - textone texttwo

有没有办法在不破坏我已编写的代码的情况下轻松完成此任务,哪种方式完美无缺?

1 个答案:

答案 0 :(得分:0)

从元素中获取name属性并将其与值:

连接
data.push($.trim(textBox.getAttribute('name') + textBox.value));