第一个表单未显示在循环中,而其他表单显示

时间:2013-02-27 09:12:46

标签: php html forms loops

我正在处理现有的应用程序。我遇到了一个问题。这是我的循环。

<tbody>
<?php if($results->num_rows > 0 ): ?>
    <?php foreach ($results->result() as $row1): ?>            
        <tr>
            <td class="td_data"><a href="<?php echo site_url('campaign/search/customer_name/'.$row1->customer_name)?>"><?php echo $row1->customer_name; ?></a></td>
            <td class="td_data"><?php echo $row1->postcode; ?>&nbsp;</td>
            <td class="td_data"><a href="<?php echo site_url('campaign/search/company/'.$row1->company);?>"><?php echo $row1->company; ?></a></td>
            <td class="td_data"><?php echo $row1->enquiry_status; ?></td>                
            <td class="td_data"><?php echo $row1->form_source; ?></td>
            <td class="td_data"><?php echo anchor('customer/edit/' . $row1->customer_id, 'Edit'); ?></td>
            <td class="td_data">
                <a href="javascript:;" id="member_login_link<?php echo $row1->customer_id?>">Login</a>
                <?php $action   =   $this->config->item('front_site_url').'members/login';?>
                <form id="member_login<?php echo $row1->customer_id?>" action="<?php echo $action;?>" method="post" >
                    <input type="hidden" name="username" value="<?php echo $row1->username?>"/>
                    <input type="hidden" name="password" value="<?php echo $row1->password?>"/>
                    <input type="hidden" name="submitted" value="yes" />
                </form>
                <script type="text/javascript">
                    $('#member_login_link<?php echo $row1->customer_id?>').click(function(){
                        $('#member_login<?php echo $row1->customer_id?>').submit();
                    });
                </script>
            </td>
        </tr>
    <?php endforeach; ?>
<?php else: ?>
     <tr>
        <td class="td_data">No Record Found</td>
    </tr>
<?php endif; ?>
</tbody>

这会创建一个列表。检查元素显示此信息。

这是firebug的结果,除了第一个之外的所有元素都很好。

enter image description here

这是第一行结果

enter image description here

我无法理解为什么会这样。我已经检查了不同的浏览器,并且都有相同的问题。

编辑:

正在生成的此列表在每行中都有表单。单击“登录”将打开选项卡并询问用户名和密码。但第一行没有表单标签,因此它没有打开标签。

2 个答案:

答案 0 :(得分:2)

我找到了这个问题。表单结束标记未写入搜索功能的标题中。所以它选择了第一个表格结束标签,并且列表中的表格开头标签被搁置,因此无法正常工作。

答案 1 :(得分:-1)

在foreach循环内的主表单标签之前使用空表单标签,然后第一个空表单标签将被foreach循环删除,并且功能正常。 例: See code