покажите div, если php echo пуст: Ajax - PullRequest
0 голосов
/ 23 февраля 2019

Быстрый вопрос.

У меня есть следующее.

<script>
$(function () {
$('form').on('submit', function(e){
   e.preventDefault();
   $.ajax({
        type: 'post',
        url: 'search/searchpost.php',
        data: $('form').serialize(),
        success: function(data) {
            $('#results').html(data);
            $('#default').hide();
        }
     });
  });
 });
 </script>

Это работает нормально, но если эхо НЕ содержит ничего, я хочу, чтобы он отображал div #default вместо скрытияЭто.Это возможно?

PHP страница

<?php
require_once('../config/db.php');
require_once('../customLIB/pdo_db.php');
require_once('../models/test.php');
$SalesRep = new SalesRep();

if ($_POST['search']) {
$data = $_POST['search'];
$rep = $SalesRep->getRep($data);

if(!empty($rep)) {

    echo "
     <div class='modal-body clearfix row'>
        <div class='col-md-4 text-center'><img     src='img/salesmap/image.jpg'  alt='Name' /></div>
        <div class='col-md-8 salesman'>
            <h2>Name</h2>
            <p class='salesman-subtxt'>Subtext</p>
            <p class='salesman-phone'><br />
                Office: <br />
                Cell: <br />
                Email: <a href='' target='_blank'></a></p>
        </div>
    </div>";

 }
}
?>

1 Ответ

0 голосов
/ 23 февраля 2019

Поскольку вы ничего не выводите, если некоторые параметры не установлены, значение data является пустой строкой (вы можете проверить это с помощью console.log(data)), поэтому:

success: function(data) {
    if (data != "") {
        $('#results').html(data);
        $('#default').hide();
    } else {
        $('#default').show();
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...