Как добавить оператор IF внутри jQuery?

У меня есть эти 2 (две) строки данных в базе данных, которые имеют разный статус.

enter image description here

А мой index.php - это мой главный файл для отображения данных.

index.php

$.get("test.php", {"test": "test"})
.done(function (data) {  
    var displayString = ""; 
    $.each(JSON.parse(data), function (key, value) {
         displayString +=
            "<tr>" + 
                "<td>" +  
                    '<a class="btn btn-xs btn-default btn-flat" target="_blank" href="view.php?param='+ value['APPLICATION_STATUS'] +' ">' +
                        '<i class="fa fa-eye"></i> ' +
                    '</a>' +  
                "</td>" + 
                displayString += "<td>" +  
                            if (value['APPLICATION_STATUS'] == 'APPROVED'){

                            } 
                            else { 

                                + '<a class="btn btn-xs btn-warning btn-flat" target="_blank" href="edit.php?param='+ value['APPLICATION_STATUS'] +' ">' +
                                    '<i class="fa fa-pencil"></i> ' +
                                '</a>' + 

                            }  
       displayString += "</td>" + 
            "</tr>";
    }); 
    $('#fTableBody').css("display", "none");
    $("#tableBody").html(displayString);
    $("#table-view").dataTable({
    dom: 'Blfrtip',
    scrollX: true, 
    buttons: [
    'copy', 'csv', 'excel', 'pdf', 'print'
    ],
    "lengthMenu": [[10, 25, 50, -1], [10, 25, 50, "All"]]
    });
}); 

И я получаю данные из test.php с помощью jQuery .get, и вот что у меня есть.

test.php

<?php
    require 'connection.php';
    $query = "SELECT APPLICATION_STATUS FROM TABLE"; 
    $result = oci_parse($conn, $query);
    oci_execute($result);
    $arr = array();
    while ($row = oci_fetch_array($result)){
        $arr[] = $row;
    }
    echo json_encode($arr);
?>

Мой вопрос: как добавить оператор if в парсинг .each json?

Я хочу отключить / скрыть кнопку edit.php , когда application_status имеет значение APPROVED .

Цените, если кто-то может помочь. Спасибо

-1
Rzj Hayabusa 30 Окт 2019 в 06:48
Предполагая, что value['APPLICATION_STATUS'] возвращает правильное значение, разве if(value['APPLICATION_STATUS'] == 'APPROVED'){} вам не подходит?
 – 
Carl Binalla
30 Окт 2019 в 06:58
У меня не работает. он говорит неожиданно, если токен.
 – 
Rzj Hayabusa
30 Окт 2019 в 07:04
И это вызывает ошибку: Uncaught SyntaxError: недопустимая левая часть в назначении
 – 
Rzj Hayabusa
30 Окт 2019 в 07:07
Раз уж вы что-то пробовали, можете ли вы это добавить?
 – 
Carl Binalla
30 Окт 2019 в 07:13
Кодировка обновлена ​​выше. но все та же ошибка: Uncaught SyntaxError: недопустимая левая часть в назначении
 – 
Rzj Hayabusa
30 Окт 2019 в 07:17

2 ответа

Надеюсь, это поможет решить вашу проблему:

<script>
 $.get("test.php", {
      "test": "test"
 }).done(function(data) {
      var displayString = "";
      $.each(JSON.parse(data), function(key, value) {
           displayString +=
                "<tr>" +
                "<td>" +
                '<a class="btn btn-xs btn-default btn-flat" target="_blank" href="view.php?param=' + value['APPLICATION_STATUS'] + ' ">' +
                '<i class="fa fa-eye"></i> ' +
                '</a>' +
                "</td>";
           displayString += "<td>";
           // make a condition
           if (value['APPLICATION_STATUS'] == 'APPROVED') {
                displayString += 'hide button';
           } else {
                displayString += '<a class="btn btn-xs btn-warning btn-flat" target="_blank" href="edit.php?param=' + value['APPLICATION_STATUS'] + ' ">' + '<i class="fa fa-pencil"></i>' + '</a>';
           }
           displayString += "</td>";
           displayString += "</tr>";
      });
      $('#fTableBody').css("display", "none");
      $("#tableBody").html(displayString);
      $("#table-view").dataTable({
           dom: 'Blfrtip',
           scrollX: true,
           buttons: [
                'copy', 'csv', 'excel', 'pdf', 'print'
           ],
           "lengthMenu": [
                [10, 25, 50, -1],
                [10, 25, 50, "All"]
           ]
      });
 });
0
Alif 30 Окт 2019 в 07:16
Неа. Ошибка: check.php: 460 Uncaught SyntaxError: недопустимая левая часть в назначении
 – 
Rzj Hayabusa
30 Окт 2019 в 07:06
Все нормально. Я уже нашел самый простой ответ. Сначала я создаю оператор if, а затем в блок if я вставляю весь displayString. это решает мою проблему. Благодарю.
 – 
Rzj Hayabusa
30 Окт 2019 в 07:36

Не уверен, что это правильный ответ или нет, но это решило мою проблему.

index.php

$.get("test.php", {"test": "test"})
    .done(function (data) {  
        var displayString = ""; 
        $.each(JSON.parse(data), function (key, value) {
            if(value['APPLICATION_STATUS'] == 'APPROVED')
        {
            displayString +=
            "<tr>" +  
                "<td>" +  
                    '<a class="btn btn-xs btn-default btn-flat" target="_blank" href="view.php?param='+ value['APPLICATION_STATUS'] +' ">' +
                        '<i class="fa fa-eye"></i> ' +
                    '</a>' +  
                "</td>" +   
            "</tr>";
        }
        else
        {
            displayString +=
            "<tr>" +  
                "<td>" +  
                    '<a class="btn btn-xs btn-default btn-flat" target="_blank" href="view.php?param='+ value['APPLICATION_STATUS'] +' ">' +
                        '<i class="fa fa-eye"></i> ' +
                    '</a>' +  
                "</td>" + 
                "<td>" +  
                    '<a class="btn btn-xs btn-warning btn-flat" target="_blank" href="edit.php?param='+ value['APPLICATION_STATUS'] +' ">' +
                        '<i class="fa fa-pencil"></i> ' +
                    '</a>' + 
                "</td>" +  
            "</tr>";
        }

        }); 
        $('#fTableBody').css("display", "none");
        $("#tableBody").html(displayString);
        $("#table-view").dataTable({
        dom: 'Blfrtip',
        scrollX: true, 
        buttons: [
        'copy', 'csv', 'excel', 'pdf', 'print'
        ],
        "lengthMenu": [[10, 25, 50, -1], [10, 25, 50, "All"]]
        });
    }); 

Спасибо.

0
Rzj Hayabusa 30 Окт 2019 в 07:41