私はaspxページのコードの中にメソッドを持っています.Javascriptから2つのメソッドを呼び出す必要があります。問題は私がやっていることですそれはJsonリクエストとWebMethodがありますが、このメソッドは静的でなければならず、このメソッドからページコンポーネントやその他のメソッドにアクセスすることはできません。aspxから非静的メソッドを呼び出す方法
私が好きなものしようとしていた:
をjavascript関数
function Func(Value) {
var conf=confirm('Sure? '+valor)
if (conf==true)
{
BlockAction();
}
}
function BlockAction() {
$.ajax({
type: "POST",
url: 'frmVentaTelefonica.aspx/BlockAction',
data: "",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
$("#divResult").html("success");
},
error: function (e) {
$("#divResult").html("Something Wrong.");
}
})};
コードビハインドコード:
[WebMethod]
public static void BlockAcction()
{
try
{
frmVentaTelefonica venta = new frmVentaTelefonica();
venta.ConsultarVentaTelefonica();
venta.ImprimirTiquetes();
}
catch (Exception e)
{
throw;
}
}
私は確認がtrueの場合、これらの2つのメソッドを呼び出したいです。
アップデート:このような二つの方法にアクセスすることが必要で :
public void ConsultarVentaTelefonica()
{
DatosImpresion = new List<Impresion>();
IServicioVentas servicioVentas;
servicioVentas = SATWebServiceLocator<IServicioVentas>.ObtenerServicio();
string Tiquetes = string.Empty;
foreach (GridDataItem dataItem in gridInfoVentaTelefonica.MasterTableView.Items)
{
if ((dataItem.FindControl("CheckBox1") as CheckBox).Checked)
{
Tiquetes = Tiquetes + (dataItem["Tiquete"]).Text + ",";
}
}
Tiquetes = Tiquetes.TrimEnd(Tiquetes[Tiquetes.Length - 1]);
Tiquetes = " " + Tiquetes + " ";
DataSet dsResultado = servicioVentas.EntregaTelefonica(sessionR8A.Turno.IdTurno, Tiquetes);
if (dsResultado.Tables.Count > 0 && dsResultado.Tables[0].Rows.Count > 0)
だけで、データベース内の真である、これらの方法は、更新プログラムを実行して、チケットを印刷する(第1グリッドを読ん項目をチェックする)
問題をより詳しく説明してください。コードの背後にあるページコンポーネントにアクセスする必要があるのはなぜですか?何を正確にアクセスしようとしていますか?必要な値をBlockActionメソッドに渡すだけではどうですか? –
移動します。私たちは2016年です。WebAPIを使用してください! –
私は古いと本当に本当に新しい技術者に更新したいと知っています。 – Jmperez