具有相同ID的多个输入字段

时间:2012-09-18 10:24:14

标签: php jquery

我使用输入字段从php代码渲染数据但是当我从数据库中检索数据时,输入字段被复制,我已经为它分配了一个id和一个类值,现在我面临着如果我使用id它只显示我只使用第一个值。如果我使用类它开始迭代它并完成直到每个字段并显示空的输入字段为空

Jquery Code就是这个

$('.submit-button').on('click',function(){
    $('.datecontrol').each(function(){
        alert($(this).val());
});

我的整个HTML提供了here

4 个答案:

答案 0 :(得分:0)

首先,根据标题,使用具有相同ID的多个字段不是一个好主意。它会产生CSS,Scripting等问题。

接下来,如果仅选择特定数量的字段是您的问题,则为字段分配不同的类以表示特定组。

答案 1 :(得分:0)

我真的不明白你的问题,但我认为你正在寻找的答案 - 或者你应该考虑的是:

在JQuery中,您可以使用类示例选择一个ID,例如。

$("#yourid.yourclass");

这意味着您可以保留一个唯一ID(这对工作流程非常重要),您仍然可以为这些类分配组!

所以示例元素看起来像这样

<div id="mynumber" class="red"></div>
<script>
$("#mynumber.red").on("click", function()
{
alert('I was clicked');
});</script>

要查找空项,可以使用.length()

作为附加信息:要在使用相同ID时验证您的文档,请不要使用html标记id =“”,而是使用data-id =“”作为数据元素,无论如何都是有效的。

答案 2 :(得分:0)

您的代码有一些语法错误,因此如果您只想显示值为

的字段
    $('.submit-button').on('click',function(){
       $('.datecontrol').each(function(){
        if($(this).val()!='') // check if field is empty
           alert($(this).val());
       }); //-->missing closing brackets
   });

答案 3 :(得分:0)

首先,你不能对多个元素使用相同的id,如果你想让jquery代码找到元素,它只会找到最后一个。

更好,您使用类,或者您可以使用标题标记使用.each()来使用多个元素。