[英]Call the div displaying error message only when error occurs
在這段代碼中,我顯示與錯誤javascript
和情況下javascript
禁用php
將工作,錯誤消息是由顯示div
底部時,才會有錯誤所以無論發生錯誤與否,DIV總是存在的,但顯示的消息。 我希望僅在發生錯誤時才調用div
,因為它導致樣式錯誤消息出現問題。
<script type="text/javascript">
$(document).ready(function() {
$('#submit').click(function() {
var title = $('#title').val();
var body = $('#body').val();
if(title.length<5) {
$('#er').html('Error mesg');
return false;
}
if(body.length<500) {
$('#er').html('error msg');
return false;
}
});
});
</script>
<?php
error_reporting('E_ALL ^ E_NOTICE');
if(isset($_POST['submit'])) {
$title=$_POST['title'];
$body=$_POST['body'];
if (strlen($title) < 5) {
$er = "Title must be of minimum 5 characters";
}
else if (strlen($body) <500 ) {
$er = "Body must be of minimum 500 characters";
}
else {
// pdo statement to insert data in db
if ($statement->rowCount() == 1) {
$er = "Congratulations, successfully posted.";
}
else {
print_r($db->errorInfo());
}
}
}?>
<form action="" method="post">
<fieldset>
<legend>Write post</legend>
<label>Title:</label>
<input type="text" name="title" id="title"><br />
<label>Body:</label>
<textarea name="body" id="body"></textarea><br />
<input type="submit" id="submit" name="submit" value="Post"/>
</fieldset>
</form>
<div id="er"><?php echo $er; ?></div>
我嘗試使用以下代碼替換div
,但現在沒有錯誤消息顯示,似乎沒有div
<?php
if(!empty($er)) {
echo '<div id="er">'.$er.'</div>';
}
?>
只需嘗試替換php
部分
<?php
if($er) {
echo '<div id="er">'.$er.'</div>';
}
?>
您可能在代碼中的某處定義了$er
。 因此, if ($er) { // show hide div code }
沒有響應。
或者嘗試在文檔頂部定義$er = null
或$er = ""
,如果$er != null
或$er != ""
顯示錯誤div
$er = null;
if (isset($_POST['submit'])) {
// your code
}
在HTML
if ($er != null) {
echo "<div id='er'> $er </div>";
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.