ajax用于数组搜索

时间:2012-09-04 18:32:47

标签: php sql ajax jquery-autocomplete

我的观看代码就像这样

<?php for($i = 1; $i <=10; $i++):?>
        <tr>
            <td width="10">
                <?php echo $i;?>
            </td>

            <td>
            <input size="10" type="text" name="code[]" value="<?php echo '';?>" id="code" />
            </td>
            <td width="20%">
                <name="product[]" value="<?php echo '';?>" id="product"/>
            </td>
            <td>
                <input size="10"type="text" name="rate[]" value="<?php echo '';?>" id="rate" />
            </td>
            <td>
                <input size="10" type="text" name="quantity[]" value="<?php echo '';?>" id="quantity" />
            </td>
            <td width="15%">
                <name="total[]" value="<?php echo '';?>" id="total"/>
            </td>
            <td>
                <input size="10" type="text" name="sell[]" value="<?php echo '';?>" id="sell" />
            </td>

        </tr>
        <?php endfor;?>

在代码字段中我只需输入代码,在产品字段中ajax将设置相应的产品名称。但主要问题是当在第二行或第三行键入任何代码时,它也会为第一行设置产品。任何人都在ajax中的同名数组输入上修复此问题。我在codigniter框架

1 个答案:

答案 0 :(得分:0)

您在每行中对类似的HTML标记使用相同的ID。这是禁忌;预期ID在整个文档中都是唯一的。

用类替换你的ID:

<td>
    <input size="10" type="text" name="code[]" value="<?php echo '';?>" class="code" />
</td>

或将$i变量附加到每个ID,以便它们是唯一的:

<td>
    <input size="10" type="text" name="code[]" value="<?php echo '';?>" id="code_<?php echo $i ?>" />
</td>

并相应调整您的JavaScript。