Ajax нет функции после изменения сценария jquery - PullRequest
0 голосов
/ 09 декабря 2010

Я хочу показать некоторые данные из БД.и я использую AJAX, чтобы сделать это.Но что-то не так происходит, я не могу показать после того, как я изменил какой-то скрипт jquery на своей странице.

какая часть следующего скрипта, которая вызвала мою страницу, не показывает результат:

$("#model").change(function() {
             var barcode;
             barCode=$("#model").val();
             var data1 = $("#model").val(barCode.substr(0,barCode.length-8));
             var data2 = $("#serial").val(barCode.substr(barCode.length-8,8));
             var str= data1;
             var matches=str.match(/[TEJUG2]\D*D/i);
         $.ajax({
                  type:"post",
                  url:"process1.php",
                  data:"tversion="+matches+"&action=tunermatches",
                  cache:false,
                  async:false,
                  success: function(res){
                                 $('#value').replaceWith(
                                           "<div id='value'><h6>" + res + "</h6></div>"
                                           );
                                 }
                  });

Что я хочу сделать, это после отдельных данных.Сценарий прочитает data1, а затем выполнит фильтрацию некоторых символов из текстового значения (используйте регулярное выражение).

после сопоставления ajax отправит в БД, а затем отфильтрует данные внутри БД.после этого данные отобразятся на странице.

1 Ответ

1 голос
/ 09 декабря 2010

Вы делаете странные вещи со своими переменными.

Изначально barCode=$("#model").val(); выглядит разумным, хотя вы можете захотеть объединить это с определением выше.

Затем вы вызываете var data1 = $("#model").val(barCode.substr(0,barCode.length-8));, таким образом, data1 на самом деле является объектом jQuery: http://api.jquery.com/val/#val2

Таким образом, похоже, что вы вызываете val (что-то) и ожидаете получить обратно строку, как если бы вы вызывали val ().Что вы, вероятно, хотите сделать, это сказать:

var data1 = $("#model").val(barCode.substr(0,barCode.length-8)).val();

Поскольку это даст вам фактическое значение того, что находится в # модели.

Кроме того, matches этомассив, так что вы, вероятно, хотите вместо этого вызвать

data:"tversion="+matches.length+"&action=tunermatches", (обратите внимание на добавление .length к matches).

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