我在目标网页上有一个表单,其中包含两个类型输入:
<input type="text" name="email" placeholder="enter your email" id="email">
<input type="submit" name="submit" id="submit" value="GO">
PHP验证我的表单后,如果成功,我的PHP脚本中有这段代码:
if($result){ // If successful
echo '<style>input[type="submit"],input[type="text"]{display:none;}</style>';
echo '<p class="success">Thank you for registering!</p>';
}
问题是只保留提交输入 - 文本输入仍然存在。我试过隔离&#34;文本&#34;输入使用完全相同的代码结构; p标签上的类也起作用。有人知道这个的原因吗?
答案 0 :(得分:2)
嗯,你可以更容易地做到这一点:
if ($result) { // If successful
echo '<p class="success">Thank you for registering!</p>';
}
else {
echo '<input type="text" name="email" placeholder="enter your email" id="email">
<input type="submit" name="submit" id="submit" value="GO">';
}
但最好的方法是 - Javascript
答案 1 :(得分:0)
试试这个,它应该有用。
if($result){ // If successful
echo '<style>input[type=submit],input[type=text]{display:none;}</style>';
echo '<p class="success">Thank you for registering!</p>';
}
答案 2 :(得分:0)
尝试使用id作为选择器,似乎更可靠。
if ($result) {
echo '<style>#submit,#text{display:none;}</style>';
echo '<p class="success">Thank you for registering!</p>';
}
答案 3 :(得分:0)
我找到了一个解决方案:
在表单部分之外创建一个隐藏的div。
<p class="hidden">Thank you for registering.</p>
在提交时,隐藏表单并显示div:
echo '<style>section#form{display:none;}</style>';
echo '<style>p.hidden{display:inherit;}</style>';