исправление входных значений и использование их в URL-адресе ajax-запроса - PullRequest
0 голосов
/ 27 марта 2012

Я пытаюсь взять значение из поля ввода и использовать его в URL-адресе моего ajax-запроса.Во-первых, я хочу исправить ввод, чтобы все было в нижнем регистре, чтобы он соответствовал пути файла, который я запрашиваю.Для каждой из двух компаний я пробовал разные способы сделать это, но ни одна из них не работала.Есть идеи?

function requestCompany1 (evt) {
        var company1 = $('#companyInput1').val(
            function(i, val) {
               return val.toLowerCase();
      }).val();

console.log(company1);
        var url1 = 'assets/js/' + company1 + '.json'
        $.ajax({
            url : url1,
            dataType: 'json',
                data: company1,
            success: function(data) {
          //code the run on success
              }


function requestCompany2 (evt) {
    var company2 = $('#companyInput2').val().toLowerCase();
    var url2 = 'assets/js/' + company2 + '.json'

    console.log(company2);
    $.ajax({
        url : 'assets/js/spling.json',
        dataType: 'json',
        data: company2,
        success: function(data) {
                //code to be called on success
        });
}

Я знаю, что мог бы объединить две функции, чтобы сделать это проще, но я просто хотел сначала изложить это.Спасибо

Отредактировано добавлено .val() до конца компании1

1 Ответ

1 голос
/ 27 марта 2012

Первая версия должна регистрировать объект jQuery для элемента ввода в консоли, поскольку вы предоставили функцию в качестве аргумента для метода val() ... теперь это установщик, а не получатель.

Если выизменив его на следующий, он должен возвращать значение:

var company1 = $('#companyInput1').val(
        function(i, val) {
            return val.toLowerCase();
    }).val();

Вторая версия: вы не передаете созданную вами переменную url объекту параметров ajax и есть синтаксическая ошибка ... отсутствует закрывающая скобка для success

function requestCompany2 (evt) {
    var company2 = $('#companyInput2').val().toLowerCase();
    var url2 = 'assets/js/' + company2 + '.json'

    console.log(company2);
    $.ajax({
        url : url2,
        dataType: 'json',
        data: company2,
        success: function(data) {
                //code to be called on success
        }
   });
}

Отправка data в файл json не имеет большого смысла, если только он не является динамическим файлом на сервере.Если это так, вам необходимо предоставить пару ключ / значение для передачи в качестве данных

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...