сделать возвращаемое логическое значение JSON установите флажок в jQuery

#jquery #json

#jquery #json

Вопрос:

Я пытаюсь понять, что я здесь делаю не так. Используя автозаполнение, я получаю данные, которые возвращаются с данными JSON….

Вот данные JSON, которые возвращаются из ЗАПРОСА.

  [{"value":"Company Test 1 Manager Test 1 111-111-1111","Company_Name":"Company Test 1","Manager":"Manager Test 1","Phone":"111-111-1111","Contacted":"1"},
 {"value":"Company Test 2 Manager Test 2 222-222-2222","Company_Name":"Company Test 2","Manager":"Manager Test 2","Phone":"222-222-2222","Contacted":"0"},
 {"value":"Company Test 3 Manager Test 3 333-333-3333","Company_Name":"Company Test 3","Manager":"Manager Test 3","Phone":"333-333-3333","Contacted":"0"},
 {"value":"Company Test 4 Manager Test 4 444-444-4444","Company_Name":"Company Test 4","Manager":"Manager Test 4","Phone":"444-444-4444","Contacted":"1"},
 {"value":"Company Test 5 Manager Test 5 555-555-5555","Company_Name":"Company Test 5","Manager":"Manager Test 5","Phone":"555-555-5555","Contacted":"0"},]
  

Теперь, вот мой jQuery (с использованием jQuery 1.6.2)

 <script type="text/javascript">
$(function() {
    $('#Company_Name').val("");
    $('#Manager').val("");
    $('#Phone').val("");
    $('#Contacted').val("");

           $("#autoSearch").autocomplete({
                source: "UPDATE.test001QUERY.php",
                minLength: 2,
                select: function(event, ui) {
                        $('#Company_Name').val(ui.item.Company_Name);
                        $('#Manager').val(ui.item.Manager);
                        $('#Phone').val(ui.item.Phone);

                    if ('#Contacted' == [1]) {
                            $('#Contected').prop('checked', true);
                            } else {
                            $('#Contected').prop('checked', false);
                            }

                }
            });
     }); 
</script>
  

Что я сделал не так? Автозаполнение работает нормально, но флажок не «проверяется» на основе «0» или «1», которые возвращаются из ЗАПРОСА.

Ответ №1:

Я думаю

if ('#Contacted' == [1])

должно быть

if (ui.item.Contacted === "1")

Редактировать,

первое, что вам нужно сделать, это определить if , вводится ли оператор в вашем select обратном вызове при правильных обстоятельствах.

если это так, вам нужно выяснить, почему вы не изменяете правильный dom. Итак, я вижу, что ваш селектор #Contected . Вы уверены, что у вас есть флажок с id атрибутом Contected ? Должно ли это быть Contacted ?

Комментарии:

1. Нет, ничего не изменилось. Любые другие предложения?

2. @monty обновил ответ еще несколькими подсказками; не видя html, его трудно понять

3. Вау, теперь я смущен. Да, опечатка, я пойду за очками, СПАСИБО!

4. иногда вам просто нужна еще одна пара глаз. Опечатки случаются постоянно.