【问题标题】:Combine JQuery Click() and C# Button OnClick() events结合 JQuery Click() 和 C# Button OnClick() 事件
【发布时间】:2012-05-19 07:56:03
【问题描述】:

伙计们,我这里有一个情况,

我有一个 HTTP 处理程序 (InsertMap.ashx) 来将数据保存到数据库(表 1),我正在使用 JQuery 调用该方法,如下所示

    $('a#AnchSaveData').click(function (e) {
        e.preventDefault();
        $('#mapcodeimage').attr('src', $("#wPaint").wPaint("image"));
        $('#mapcode').val($('#chartdata').html());
        $.post("../InsertMap.ashx", $("form").serialize(), insertCallback);
    });

我还有另一种 C# 方法 (BtnUpdateDiagnosis_Click) 将其他一些值提交到数据库(表 2),如下所示

protected void BtnUpdateDiagnosis_Click(object sender, EventArgs e)
    {
        if (HfContainer.Value != null)
        {
            ObjPatient.UpdateDiagnosis(TxtChiefComplaints.Text.Trim(), TxtFindings.Text.Trim(), TxtPrecaution.Text.Trim(), TxtDiagnosis.Text.Trim(), TxtManagementPlan.Text.Trim(), Request.Cookies["UserID"].Value, HfContainer.Value, DdlTherapist.SelectedValue);
            Diagnosis();
        }
        else
        {
            Response.Redirect(ObjFunction.GetSeoSpecificURL("RegisterPatient"));
        }
    }

我需要的是,我需要在单个 CLICK 事件中包含这两种方法,C# Button OnClickJQuery Click()

如何将这两者结合起来?请帮帮我

【问题讨论】:

    标签: c# jquery asp.net http-post jquery-post


    【解决方案1】:

    jQuery 在浏览器中运行,C# 在服务器上运行。要将这些组合在一起,您需要选择是从浏览器还是从服务器发生,然后将其余参数移到那里。由于您有名为“Diagnosis”和“Patient”的变量,可能附加了其他可怕的词,如 HIPAA 和 PCI,我想说您可能希望让 jQuery 填充表单变量,并让按钮单击收集这些详细信息并转发将其放到 ashx 上,以避免将数据泄漏到浏览器中。

    【讨论】:

      【解决方案2】:
             $('a#AnchSaveData').click(function (e) {
                  e.preventDefault();
                  $('#mapcodeimage').attr('src', $("#wPaint").wPaint("image"));
                  $('#mapcode').val($('#chartdata').html());
                  $.post("../InsertMap.ashx", $("form").serialize(), function (data) {
                      insertCallback();
      
                      $('#BtnUpdateDiagnosis').trigger('click');
                  });
              });
      
      //Or 
      
      
                  $('a#AnchSaveData').click(function (e) {
                      if (!$(this).hasClass('InsertMapProcess')) {
                          $(this).addClass('InsertMapProcess');
                          e.preventDefault();
                          $('#mapcodeimage').attr('src', $("#wPaint").wPaint("image"));
                          $('#mapcode').val($('#chartdata').html());
                          $.post("../InsertMap.ashx", $("form").serialize(), function (data) {
                              insertCallback();
      
                              $('#BtnUpdateDiagnosis').trigger('click');
                          });
                      }
                  });
      

      【讨论】:

      • BtnUpdateDiagnosis_Click 按钮的属性 id 是什么?
      猜你喜欢
      • 1970-01-01
      • 2011-11-02
      • 2013-04-25
      • 2011-04-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-18
      • 2023-01-30
      相关资源
      最近更新 更多