Asp.Net'e PageMethod üzerinden javascript ile model doldurup gönderme
Asp.Net'e PageMethod üzerinden javascript ile model doldurup gönderme

Asp.net'te javascript tarafında model doldurup Page Method ile code behind a veri göndereceğiz.

 c# Classımız

public class Urunler
{
    public string UrunAdi { get; set; }
    public string UrunCode { get; set; }
}

 

 

Javascript tarafından oluşturduğumuz fonksiyon ile modeli doldurup liste olarak PageMethod ile code tarafına gönderiyoruz.
 

function Fonksiyon() {
    var urunler = new Array();
    var i = document.getElementById("i").value;
    var c = 0;
    for (var z = 1; z < i; z++) {
        var urun = {};
        urun.UrunCode = document.getElementById(z + "_Code").value;
        urun.UrunAdi = document.getElementById("txtUrun_" + z).value;
        urunler[c] = urun;
        c++;
    }

    PageMethods.Teklif(urunler, donen);
    function donen(veri) {
    alert(veri);
    }
}

Html tarafında oluşturduğumuz formdaki verileri for ile çekiyoruz.  document.getElementById("i").value;  ile input üzerinden ekranda gösterilen ürün data sayısını alıp idleri bu sayıdaki döngü ile buluyorum, verileri Urun değişkenine alıp, devamından urunler(c)=urun; ile Urunler Array e ekliyoruz.

<input type="text" value="<%=i%>" id="i" hidden />

PageMethod Code tarafı (işlemin yapıldığı aspx dosyasının code behind kısmı)

    [System.Web.Services.WebMethod(true)]
    public static int Teklif(List<Urunler> Uruns)
    {
        foreach (Urunler urun in Uruns)
        {
            //Datayı görmek için yazıldı ihtiyacınıze göre listeyi kullanabilirsiniz.
            string code = urun.UrunCode.ToString();
        }

        return 10;
    }


Sağlık ve huzur dolu hayırlı günler.