2

私のコード:

<asp:LinkButton ID="Search" CssClass="button" runat="server" Text='<%$Resources:Strings,Search %>' OnClick="Search_Click"  />

サーバ側 :

protected void Search_Click(object sender, EventArgs e)
{
    var script = "CheckIfItemSelected()";
    ScriptManager.RegisterStartupScript(this, GetType(), "MyScript", script, true);
}

クライアント側 :

function CheckIfItemSelected() {
        var SalesmanSelectedItem = $find('<%= SalesmanGrid_grd.ClientID %>').get_masterTableView().get_selectedItems().length;
        var ProductsSelectedItem = $find('<%= SalsemanProductsGrid_grd.ClientID %>').get_masterTableView().get_selectedItems().length;

        if (SalesmanSelectedItem == 0 && ProductsSelectedItem == 0) {

            $("#<%=ErrorMsg.ClientID %>").html("please select a salesman at least<br>please select a product at least");
            return false;
        }
        if (SalesmanSelectedItem == 0) {
            $("#<%=ErrorMsg.ClientID %>").html("please select a salesman at least");
            return false ;
        }
        if (ProductsSelectedItem == 0) {
            $("#<%=ErrorMsg.ClientID %>").html("please select a product at least");
            return false;
        }
        $("#<%=ErrorMsg.ClientID %>").html("");
        return true;
    }

問題は、クライアント側の関数が false を返す場合、サーバー側の関数の続行を停止したいのですが、どうすればよいですか?

4

1 に答える 1

1

私の解決策を見つけました。それが助けになることを願っています:

 protected void Search_Click(object sender, EventArgs e)
{
  int SelectedSalesmans=  SalesmanGrid_grd.SelectedItems.Count;
  int SelectedProducts = SalsemanProductsGrid_grd.SelectedItems.Count;
  if (SelectedSalesmans == 0)
  {
      var script = "DisplayErrorMsg(\"Please Choose a salesman AT least. \")";
      ScriptManager.RegisterStartupScript(this, GetType(), "MyScript", script, true);
      return;
  }
  if (SelectedProducts == 0)
  {
      var script = "DisplayErrorMsg(\"Please Choose a Product AT least. \")";
      ScriptManager.RegisterStartupScript(this, GetType(), "MyScript", script, true);
      return;
  }
}

クライアント側:

function DisplayErrorMsg(msg) {
        $("#<%=ErrorMsg.ClientID %>").html(msg);
    }
于 2013-05-04T08:16:40.243 に答える