javascript - 如何将输入框的数组名称添加到 HTML 中?

标签 javascript php html mysql

我在使用单击函数将输入框数组添加到 HTML 时遇到问题。

这里是 JavaScript:

var i = $('table tr').length;
var count = $('table tr').length;
var row = i;
var a = 0;

$(function(){

  $(".addmore").on('click', function (a) {
    var cell= $(this).parents('td');
    var currentValue = cell.prev().find("[name=jumpack]").data('addmore');
    if(currentValue==null || currentValue == undefined)
    {
      currentValue =0;  
    }
    else
    {
      currentValue=parseInt(currentValue);
    }
    console.log(currentValue)
    var data = "<td><input class='form-control sedang' type='text' id='packinglist_" + $(this).index() + "' name='packinglist[]'/></td>";
    cell.parents('tr').find('table tr').append(data);
    currentValue++;
    cell.prev().find("[name=jumpack]").val(currentValue).data('addmore',currentValue)
  });
});

这是我的 HTML:

<div class='table-responsive'>
    <table class='table table-bordered'>
    <tr>
    <th>No</th>
    <th>Jenis Benang</th>
    <th>Warna</th>
    <th>Lot</th>
    <th>Netto</th>
    <th>Box</th>
    <th>Cones</th>
    <th>Keterangan</th>
    <th></th>
    </tr>";

$s=mysql_query("SELECT * FROM surat_jalan order by identitas_packing_surat DESC");
$a=mysql_fetch_array($s);

for($i=1;$i<=$_POST['jumlahdata'];$i++)
{
    $nomor = $a[19];
    $iden = $nomor + $i;
        echo"   <tr>
        <td><span id='snum'>$i.</span></td>
        <input class='form-control' type='hidden' id='hiddenlot_$i' name='hiddenlot[]' />
        <input class='form-control' type='hidden' id='hiddencustomer_$i' name='hiddencustomer[]' />
        <input class='form-control' type='hidden' id='hiddenprice_$i' name='hiddenprice[]' />
        <td><input class='form-control' type='text' id='jenisbenang_$i' name='jenisbenang[]' readonly/></td>
        <td><input class='form-control' type='text' id='warna_$i' name='warna[]' readonly/></td>                                
        <td><input class='form-control' type='text' id='lot_$i' name='lot[]' required/></td>
        <td><input class='form-control sedang' type='text' id='netto_$i' name='netto[]' required/> </td>
        <td><input class='form-control pendek' type='text' id='box_$i' name='box[]'/> </td>
        <td><input class='form-control pendek' type='text' id='cones_$i' name='cones[]'/> </td>
        <td><input class='form-control' type='text' id='keterangan_$i' name='keterangan[]'/>
        <input class='form-control' type='text' id='keterangan_$i' name='identitas[]' value='$iden'/>
        <input class='form-control' type='text' id='jumrow_$i' name='jumpack[]' value=''/>  
        </td>
        <td><a><span class='glyphicon glyphicon-plus addmore' id='$i'></span></a> </td>
      <td colspan='10'>
            <table id='keatas_$i' class='keatas'>
                <tr></tr>
            </table>

    </td>
    </tr>
    ";
}

所以我的问题是我必须将 jumpack[] 插入数据库,但是 name="jumpack[]" 有很多值,它的值是通过计算有多少个名为 packinglist 的文本框名称,因此我必须为 jumpack[] 创建一个数组,但是当我这样做时,JavaScript 不起作用,因为它有不同的名称,所以我的问题是如何将 JavaScript 上的 [name=jumpack] 更改为数组?

最佳答案

如果我正确理解你的问题,那么它应该通过替换来工作

cell.prev().find("[name=jumpack]")

cell.prev().find("[name=jumpack\\[\\]]")

([] 是“特殊”字符,因此在 jQuery 选择器中,您必须使用两个反斜杠对它们进行转义。)

关于javascript - 如何将输入框的数组名称添加到 HTML 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34372924/

相关文章:

java - 如何每10秒在jsp页面上包含新页面?

php - 将某人重定向到浏览器定义的搜索引擎

html - 使用 django 在模板的各个位置包含常见的 html

javascript - 隐藏第一个表单,然后显示第二个表单。第二个表单执行多次提交

html - CSS:img 的行内 block 对齐

javascript - 在 Store.js 中使用插件 (VeeValidate)

javascript - document.cookie : Works in localhost but Returns Empty on Web Hosting 问题

php - 使用 php 的 MYSQL 不会对数据进行排名,而 Root mysql 用户会

php - 谷歌分析测量协议(protocol)

javascript - 如何通过scala-js创建JS库