Это результат моего оповещения:

enter image description here

Приведенный выше массив изображений - это мой результат, полученный из таблицы с использованием запроса ajax. Но я не знаю, как использовать цикл for, и я устал в цикле for, значение разделяется одно за другим, например

enter image description here

Мой код

<script type="text/javascript">
$('#TDate').on('input change', function() {
var name =$('#TDate').val();
var credit = 0;
var debit = 0;
    $.ajax({
        type: "POST",
        url: "<?php echo base_url();?>BookKeeping/item",
        data: {name:name},
        datatype: 'json',
        success: function (data) {
            alert(data); 
var result = data;
    var arr = result;
    for (var i = 0; i < arr.length; i++){
  document.write("<br><br>array index: " + i);
  var obj = arr[i];
  for (var key in obj){
    var value = obj[key];
    document.write("<br> - " + key + ": " + value);
  }
}


}

});
});
</script>
0
Jacky 30 Дек 2019 в 10:19
Почему вы поменяли местами переменные в данных на результат, а затем результат на arr. В идеале просто проверьте, является ли результат, который вы получите в ответ, - использование массива $ .each (data, function (i, val) {// введите здесь код}) , Далее вы можете проанализировать объект html и добавить его в dom или просто использовать тот же способ записи документа, который будет работать удачно.
 – 
Rahul shukla
30 Дек 2019 в 10:45
Спасибо за ваше время, я попробовал другой код и получил результат
 – 
Jacky
30 Дек 2019 в 10:48
О, хорошо, вы можете проголосовать за любой из нижеприведенных или моих комментариев, если это было полезно, и поделиться своими результатами.
 – 
Rahul shukla
30 Дек 2019 в 10:49
Нет, я пробовал другой код не из приведенного ниже кода, это мой собственный код.
 – 
Jacky
30 Дек 2019 в 10:51

2 ответа

Вы можете изменить свой скрипт таким образом, а затем выполнить любую логику, которую хотите для ответа.

$('#TDate').on('input change', function() {
    var name =$('#TDate').val();
    var credit = 0;
    var debit = 0;
    $.ajax({
        type: "POST",
        url: "<?php echo base_url();?>BookKeeping/item",
        data: {name:name},
        datatype: 'json',
        success: function (data) {
            myGoodFunctionToHandleResponse(data);
        }
    });
});

function myGoodFunctionToHandleResponse(data){
    for(let i in data){
        console.log(data[i]);
    }
}
0
BlackXero 30 Дек 2019 в 10:40

Я забыл поставить эту функцию JSON.parse () после успешной функции, поэтому до сих пор не получил правильного результата.

<script type="text/javascript">
$('#TDate').on('input change', function() {
var name =$('#TDate').val();
var credit = 0;
var debit = 0;
    $.ajax({
        type: "POST",
        url: "<?php echo base_url();?>BookKeeping/item",
        data: {name:name},
        datatype: 'json',
        success: function (data) {
    var result = JSON.parse(data)
var mycars = result; 
for (i in mycars)
{
    if( mycars[i].dc == "C"){
    var credit = mycars[i].Amt;
}
else{
    var debit = mycars[i].Amt;
}
if(credit > debit)
{
    var bal = credit -  debit;
}
else{
    var bal = debit - credit;
}
}
  $('#bal').val(bal);      
}

});
});
</script>
0
Jacky 30 Дек 2019 в 10:52