jjery对话框表单由ajax发布不起作用

时间:2013-05-13 14:15:13

标签: jquery ajax

我试图将带有ajax的jquery对话框中的值导入到我的bb.php文件中。 我在bValid中调用了ajax函数,但是当我按下按钮时没有ajax调用。任何帮助都赞赏。

这是剧本。

<script>
$(function () {
      var box = $("#box"),
          itemname = $("#itemname"),
          size = $("#size"),
          potency = $("#potency"),
          quantity = $("#quantity"),

          allFields = $([]).add(box).add(itemname).add(size).add(potency).add(quantity),
          tips = $(".validateTips");

      function updateTips(t) {
          tips.text(t)
              .addClass("ui-state-highlight");
          setTimeout(function () {
              tips.removeClass("ui-state-highlight", 1500);
          }, 500);
      }


      function checkLength(o, n, min, max) {
          if (o.val().length > max || o.val().length < min) {
              o.addClass("ui-state-error");
              updateTips("Please enter the field ");
              return false;
          } else {
              return true;
          }
      }

      function checkRegexp(o, regexp, n) {
          if (!(regexp.test(o.val()))) {
              o.addClass("ui-state-error");
              updateTips(n);
              return false;
          } else {
              return true;
          }
      }

      $("#dialog-form").dialog({
          autoOpen: false,
          height: 600,
          width: 500,
          modal: true,
          buttons: {
              "edit": function () {
                  var bValid = true;
                  allFields.removeClass("ui-state-error");
                  bValid = bValid && checkLength(box, "box", 1, 16);
                  bValid = bValid && checkLength(itemname, "itemname", 1, 16);
                  bValid = bValid && checkLength(size, "size", 1, 16);
                  bValid = bValid && checkLength(potency, "potency", 1, 16);
                  bValid = bValid && checkLength(quantity, "quantity", 1, 16);

                  if (bValid) {
                      $("#users tbody").append("<tr>" +
                          "<td>" + box.val() + "</td>" +
                          "<td>" + itemname.val() + "</td>" +
                          "<td>" + size.val() + "</td>" +
                          "<td>" + potency.val() + "</td>" +
                          "<td>" + quantity.val() + "</td>" +
                          "</tr>");

                      //my ajax call
                      var data = $('#dialog-form').serialize();
                      $.ajax({
                          url: "bb.php",
                          type: "post",
                          data: data,
                          dataType: "json",
                          success: function (data) {
                              alert(data);
                          },
                          error: function (data) {
                              alert('invalid');
                          }
                      });

                      $(this).dialog("close");
                  }
              },
              Cancel: function () {
                  $(this).dialog("close");
              }
          },
          close: function () {
              allFields.val("").removeClass("ui-state-error");
          }
      });

  }); 
</script>

任何想法??

0 个答案:

没有答案