【问题标题】:Form ends immediately before values表单在值之前结束
【发布时间】:2016-03-21 10:12:18
【问题描述】:

我的表单在我启动后立即结束。 我的源代码显示了这一点

<form method="post" action="http://www.golf.shadowhosting.nl/wp-content/themes/golf/form/offerte.php"></form>
<label>Heer / Mevrouw - Mr / Mrs *</label>
<select name="heermevrouw">
    <option value="heer">Heer</option>

所以你可以看到表单立即关闭

这是我的全部代码,为什么表单会关闭?

<div class="col-md-4 tabel">
<table>
    <tbody>
        <tr>
            <th width="25%">Geldig van</th>
            <th width="25%">Geldig tot</th>
            <th width="50%">Prijs vanaf</th>
        </tr>
        <?php $i = 0; while(have_rows('geldig')) : the_row(); $i++; ?>
            <tr>
                <td>
                    <?php if (get_sub_field('vanaf')): ?>
                        <?php the_sub_field('vanaf'); ?>
                            <?php else: ?>-
                                <?php endif; ?>
                </td>
                <td>
                    <?php if (get_sub_field('tot')): ?>
                        <?php the_sub_field('tot'); ?>
                            <?php else: ?>-
                                <?php endif; ?>
                </td>
                <td>
                    <p>€
                        <?php the_sub_field('prijs_vanaf'); ?>,- p.p.</p>
                    <a class="btn btn-default" href="#" data-featherlight="#<?php echo $i; ?>">
                        <button>Offerte aanvragen</button>
                    </a>
                </td>
            </tr>
            <div class="lightbox offerte" id="<?php echo $i; ?>">
                <div class="left-gegevens">
                    <h2>Offerte aanvraag formulier</h2>
                    <h3>Bestemming: <?php the_title(); ?></h3>
                    <h3>Offerte geldig vanaf: <?php if (get_sub_field('vanaf')): ?><?php the_sub_field('vanaf'); ?><?php else: ?>-<?php endif; ?></h3>
                    <h3>Offerte geldig tot: <?php if (get_sub_field('tot')): ?><?php the_sub_field('tot'); ?><?php else: ?>-<?php endif; ?></h3>
                    <h3>Prijs: €<?php the_sub_field('prijs_vanaf'); ?>,- p.p.</h3>
                </div>
                <div class="right-gegegevens">

                </div>
                <form method="post" action="<?php echo get_template_directory_uri(); ?>/form/offerte.php">
                    <label>Heer / Mevrouw - Mr / Mrs *</label>
                    <select name="heermevrouw">
                        <option value="heer">Heer</option>
                        <option value="mevrouw">Mevrouw</option>
                    </select>
                    <label>Voornaam / First Name *</label>
                    <input name="voornaam">
                    <label>Achternaam / Last name *</label>
                    <input name="achternaam">
                    <label>Aantal Personen / Persons *</label>
                    <input name="aantalpersonen">
                    <label>Aankomst / Arrival *</label>
                    <input type="date" name="aankomst">
                    <label>Vertrek / Departure *</label>
                    <input type="date" name="vertrek">
                    <label>Aantal 2 persoonskamers / Nr of Double rooms *</label>
                    <input name="tweepk" type="number">
                    <label>Aantal 1 persoonskamers / Nr of Single rooms *</label>
                    <input name="eenpk" type="number">
                    <label>Vul hieronder uw gewenste speeldatum(s) en starttijden in / Golfdays & Times *</label>
                    <textarea name="golfdays"></textarea>
                    <label>Opmerkingen, vragen of wensen / Remarks, Questions or Wishes?</label>
                    <textarea name="opmerkingen"></textarea>
                    <label>Email *</label>
                    <input name="email" type="email">
                    <label>Adres</label>
                    <input name="adres">
                    <label>Postcode / ZIP Code</label>
                    <input name="postcode">
                    <label>Telefoonnummer *</label>
                    <input name="telefoon" type="tel">
                    <label>Reisverzekering gewenst?</label>
                    <select name="reisverzekering">
                        <option value="ja">Ja</option>
                        <option value="nee">Nee</option>
                    </select>
                    <label>Annuleringsverzekering gewenst?</label>
                    <select name="annuleringsverzekering">
                        <option value="ja">Ja</option>
                        <option value="nee">Nee</option>
                    </select>
                    <label>Offerte voor tickets gewenst?</label>
                    <div class="offerteticket">
                        <button>Offerte voor ticket</button>
                    </div>
                    <div class="ticket">
                        <label class="honderd">
                            <br><u>Indien u een offerte voor de tickets wilt ontvangen graag de volgende gegevens doorgeven</u> zoals in paspoort/ID bewijs staan vermeld van alle deelnemers zodat wij een gegarandeerde prijs voor 72 uur kunnen geven. Wanneer wij deze gegevens niet hebben kunnen wij enkel een dagprijs opgeven waarbij de prijzen nog kunnen veranderen. Bij moment van definitieve boeking ontvangt u eerst nog een bevestiging van een eventuele prijswijzing.</label>
                        <label>1e keus luchthaven van vertrek</label>
                        <input name="lucht1vertrek">
                        <label>2e keus luchthaven van vertrek</label>
                        <input name="lucht2vertrek">
                        <label>Volledige naam</label>
                        <input name="volnaam">
                        <label>Geboorte datum</label>
                        <input name="geboorte" type="date">
                        <label>Paspoortnummer</label>
                        <input name="paspoort">
                    </div>
                    <label>Offerte voor auto gewenst?</label>
                    <div class="offerteauto">
                        <button>Offerte voor huurauto</button>
                    </div>
                    <div class="auto">
                        <label class="honderd">
                            <br><u>Indien u een offerte voor een huurauto wilt ontvangen graag de volgende gegevens doorgeven</u></label>
                        <label>Voor- en achternaam 1e bestuurder</label>
                        <input name="van1bes">
                    </div>
                    <label>Waar kent u ons van?</label>
                    <select name="waarkentu">
                        <option value="Vaste Klant">Vaste Klant</option>
                        <option value="Internet Zoekmachine">Internet Zoekmachine</option>
                        <option value="Vrienden/Kennissen">Vrienden/Kennissen</option>
                        <option value="Advertentie">Advertentie</option>
                        <option value="Flyers">Flyers</option>
                        <option value="Google">Google</option>
                        <option value="Anders">Anders</option>
                    </select>
                    <label>Nieuwsbrief</label>
                    <select name="nieuwsbrief">
                        <option value="ja">Ja</option>
                        <option value="nee">Nee</option>
                    </select>
                    <label>Akkoord</label>
                    <input id="submit" name="submit" type="submit" value="Verzenden">

                </form>
            </div>
            <?php endwhile; ?>
    </tbody>
</table>
<a href="<?php echo home_url();?>/offerte-op-maat/">
    <button>Offerte op maat</button>
</a>

是在 HTML 中还是在 PHP 中?我不知道。以前在我的网站上从未见过。

【问题讨论】:

  • 在所有&lt;inputs&gt; 上定义类型。缺少类型&lt;input name="voornaam" &gt;
  • 在您的代码表单中定义在 While 循环中。如果 while 循环在 10 轮后结束。你有 10 个表格要显示
  • 做了 id。什么都没有改变,形式保持不变 阿卜杜拉。过段时间有问题吗?
  • 在while循环之后放置表单

标签: php html forms


【解决方案1】:

看起来您正在创建 &lt;tr&gt;&lt;div&gt; 元素作为 &lt;tbody&gt; 的直接子元素,不应该这样做 :) The only permitted child inside of &lt;tbody&gt; is &lt;tr&gt;

所以首先,不要这样:

<?php $i = 0; while(have_rows('geldig')) : the_row(); $i++; ?>
<tr>
    <td></td>
    <td></td>
    <td></td>
</tr>
<div class="lightbox offerte" id="<?php echo $i; ?>"></div>
<?php endwhile; ?>

尝试将lightbox div 放在最后一个td 元素内。像这样:

<?php $i = 0; while(have_rows('geldig')) : the_row(); $i++; ?>
<tr>
    <td></td>
    <td></td>
    <td>
        <!-- your other stuff here -->
        <div class="lightbox offerte" id="<?php echo $i; ?>"></div>
    </td>
</tr>
<?php endwhile; ?>

因此,您将拥有一个完全有效的 HTML 表格。

【讨论】:

  • “ 中唯一允许的元素是 ”——这不准确。也许“ 唯一允许的直系后代是 ”。在 中你可以有 ,然后是 ,然后天空就是极限 - div、表单、p 标签等都可以包含在 中。所以从技术上讲,几乎任何元素都可以在 中使用
  • @cale_b,我部分同意你的观点,虽然我从来没有真正考虑过 that 字面意思:) 将单词 element 更改为单词 child
  • 是的,我明白了——但我知道这个网站被很多新的、没有经验的人使用,并且希望帮助避免这些人的困惑!我知道你的意思,但其他人可能不知道......
猜你喜欢
相关资源
最近更新 更多
热门标签