javascript - 如何强制jquery触发函数触发for循环中的所有事件?

标签 javascript php jquery html

我正在开发一个页面,其中使用 js、php、jquery 将复选框输入字段的值保存在 javascript 数组中,后来我使用该数组,但我不知道为什么当我从 php foreach 中删除字段时循环并手动为每个复选框赋予不同的值一切正常,正如您在 jsfiddle 中看到的那样工作正常,它首先显示 hi,然后显示 hi,bi,最后显示 hi,bi,goodby 正如预期的那样。

但是当我使用 php 的 foreach 循环填充这些输入字段的值时,它是第一个显示空白,而不是 hihi,bi 并且它不是最后显示嗨,再见。我不知道我在哪里收到此错误。

我的html代码;

<input type="checkbox" id="selectall"/>Select all<br>
<input id="live_prod_input" type="checkbox" name="live_prod_chk" value="hi" onclick="click_alert(this.value)"/>Check box 1<br>
<input id="live_prod_input" type="checkbox" name="live_prod_chk" value="bi" onclick="click_alert(this.value)"/>Check box 2<br>
<input id="live_prod_input" type="checkbox" name="live_prod_chk" value="goodby" onclick="click_alert(this.value)"/>Check box 3<br>

以下是我的输入字段的 php 代码。

<?php
 foreach ($result as $value) 
 {
 ?>
 <input id="live_prod_input" type="checkbox" name="live_prod_chk" value="<?= $value['p_id'] ?>" onclick="showPause('show_hide_multi_pause')"/>
 <?php
 }
?>

以下是结果数组

    Array
(
    [0] => Array
        (
            [p_id] => 110
            [left(p_title,30)] => Samsung GALAXY Note II N7100 [
            [left(p_features,30)] => OS : Android , Display : 4.8&q
            [p_status] => 1
            [od_price] => 800
            [od_offer_price] => 750
            [pi_image1] => Samsung-Galaxy-S3-Neo_1_110.jpg
            [o_sqty] => 65
            [o_cond] => New
            [od_htime] => 2 Business days
        )

[1] => Array
    (
        [p_id] => 127
        [left(p_title,30)] => Samsung Galaxy Note Edge SM-N9
        [left(p_features,30)] => this is DeMo FeAtUrE
        [p_status] => 1
        [od_price] => 654
        [od_offer_price] => 
        [pi_image1] => Samsung Galaxy Note Edge SM-N915G_1_127.jpg
        [o_sqty] => 65
        [o_cond] => Old
        [od_htime] => 
    )
)

我将输入值插入为 $value['p_id']

最佳答案

我们不能对同一页面中的多个元素使用相同的Id。 您可以为每个复选框使用 class,而不是使用 Id。 例如, 代替 $('input#live_prod_input').each(function() {})

使用$('input.live_prod_input').each(function(){})

在下面的复选框中

<input id="live_prod_input" type="checkbox" name="live_prod_chk" value="hi" onclick="click_alert(this.value)"/>Check box 1<br>

将上面的Id替换为class。

关于javascript - 如何强制jquery触发函数触发for循环中的所有事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29740550/

相关文章:

javascript - 如何用更少的代码解释时间?

php - 使Mysql查询不区分大小写

Jquery小于或大于问题

javascript - jQuery 检查是否填写必填字段的最佳方式

php - Doctrine2,Symfony2。甲骨文错误 :Class has no field or association named user_id

javascript - 在 div 中创建一个具有相同类名的 div

javascript - 事件监听器未在 IE 中触发

javascript - Vue 过滤器 - 根据搜索输入返回对象

javascript - 为什么 JSON.stringify 会忽略值未定义的键?

php - PHP Doctrine MongoDB ODM 中的鉴别器字段冲突是什么?