double action in one click jquery



我在使用onClick时遇到问题,在第一次单击中运行一个操作,第二次单击显示我的单击运行两个操作的问题,第三次单击运行三个操作,下一次单击。白色我的jquery有什么问题?

我的按钮点击

<a id="detailproduct" href="'.URL.'#PopProductDetail" onclick="showdetailproduct('.$val->bid.')" data-toggle="modal">'.$val->product name.'</a>

这是代码

<script type="text/javascript">
    function showdetailproduct(id){
    $('#PopProductDetail').on('shown.bs.modal',function(e) {
        utils.ViewPopProduct(id);
    });
    }
var utils = {};
    (function ($) {
          $.ajaxSetup({"error":function(XMLHttpRequest,textStatus, errorThrown) {
              alert(textStatus);
              alert(errorThrown);
              alert(XMLHttpRequest.responseText);
          }});
        utils.ViewPopProduct =  function ViewPopProduct(id) {
            var data={id:id};
            $.ajax({
                type:"GET",
                datatype:"json",
                url:"",
                data:data,
                datatype:"html",
                cache:false,
                success: function(data) {
                        data = JSON.parse( data ); 
                        $('#code').val(data.code);
                        $('#name').val(data.name);
                        $('#groupname').val(data.groupname);
                        $('#brand').val(data.brand);
                        $('#PopProductDetail').trigger("reset");
                        $("#detailproduct").unbind("click", ViewPopProduct);
                }
            });
        return false;
    };
    })(jQuery, window, document);
</script>

动作url

http://example.com/product?id=34&_=1450341040382

感谢

在showdetailproduct方法中,您又订阅了一次事件:

$('#PopProductDetail').on('shown.bs.modal',function(e) {

此订阅应只发生一次。把活页夹放在document.ready上。点击事件是不必要的,href正在发挥作用。

这是我的代码,如果它对你有帮助的话。

我可以一次点击处理2个功能

Html代码

 <input type="button" id="btnSave2" value="INSERT-UPDATE" title="Save" 
                onclick="return btnSave2_onclick()" />
 function btnSave2_onclick() 
 {
      var txtcategorycodeid = $("#txtcategorycodeid").val();
      var txtcategoryname = $("#txtcategoryname").val();
      var fuimg = $("#fuimg").val();
      var ddstatus = $("#ddstatus").val();
      var fuimgst;
      if (fuimg != '' ) {
          fuimgst = 'active';
      }
      if (fuimg == '') {
          fuimgst = 'inactive';
      }

      if (txtcategorycodeid == '' && txtcategoryname == ''
            && ddstatus == '---Select---') {
          alert("Enter All Fields");
          return false;
      }
      else {
          if (txtcategorycodeid == '') {
              alert("Enter categorycodeid");
              return false;
          }
          if (txtcategoryname == '') {
              alert("Req  categoryname");
              return false;
          }
          if (!txtcategoryname.match(/^[a-zA-Z]+$/)) {
              alert('categoryname Only alphabets are allowed');
              return false;
          }

          if (ddstatus == '---Select---') {
              alert("Enter status");
              return false;
          }
      }

      var fileUpload = $("#fuimg").get(0);
      var files = fileUpload.files;
      var test = new FormData();
      for (var i = 0; i < files.length; i++) {
          test.append(files[i].name, files[i]);
      }
      $.ajax({
          url: "imguploadhandler.ashx",
          type: "POST",
          contentType: false,
          processData: false,
          data: test,
          // dataType: "json",
          success: function (result) {


      $.ajax({
          type: "POST",
          url: "JKS_Service.asmx/productcategor1",
          data: "{categoryCodeId: '" + txtcategorycodeid + "'       ,categoryName:'" + txtcategoryname + "',status:'" + ddstatus + "',fupic:'"+fuimgst+"'}",
          contentType: "application/json; charset=utf-8",
          datatype: "jsondata",
          async: "true",
          success: function (response) {
              $(".errMsg ul").remove();
              var myObject = eval('(' + response.d + ')');
              if (myObject > 0) {
                  alert("Data saved successfully...");
              }
              else {
                  alert("Not saved..");
              }
              clear();
          },
          error: function (response) {
              alert(response.status + ' ' + response.statusText);
          }
      });
  },

  });
  }

最新更新