• 21-01-2018, 17:20:20
    #1
    Merhaba Arkadaşlar,
    kaydet ve devam et adlı bir butonum var ve value'suna göre işlem yaptırıyorum.

    <button type="submit" id="submit5" name="submit" value="save-continue" data-id="5" />

    Tipi hidden olan bir inputun value'suna;
    butona tıklandığı anda inputun value'suna buttondan gelen data-id değerini basarak
    formu nasıl post ettirebilirim acaba ?

    (Post işleminde hem butonun değerini hem de inputun değerini almam gerek)
    Böyle birşey mümkünmüdür yada
    başka bir yol gösterebilir misiniz?
  • 21-01-2018, 17:24:10
    #2
    Misafir
    Dinamik bir şekilde data-id yazdığınız kodun aynısını sayfa oluştururkende hidden input'un value kısmına neden yazmıyorsunuz ?
    Data-id 5 nereden geliyorsa aynı kodu kopyalayıp input'un value kısmına yapıştırın ?
  • 21-01-2018, 19:03:28
    #3
    Misafir adlı üyeden alıntı: mesajı görüntüle
    Dinamik bir şekilde data-id yazdığınız kodun aynısını sayfa oluştururkende hidden input'un value kısmına neden yazmıyorsunuz ?
    Data-id 5 nereden geliyorsa aynı kodu kopyalayıp input'un value kısmına yapıştırın ?
    aynı isimde birden fazla button bulunmakta ve ve butonların value'sunu alıyorum. ama birden fazla butona value ekliyemediğim için. böyle bir yola başvurdum.
  • 21-01-2018, 19:09:16
    #4
    Misafir
    ByQush adlı üyeden alıntı: mesajı görüntüle
    aynı isimde birden fazla button bulunmakta ve ve butonların value'sunu alıyorum. ama birden fazla butona value ekliyemediğim için. böyle bir yola başvurdum.
    Butondan value almanız yanlış bir hareket bence, sistemi daha normal herkesin kullandığı şekillerde yazmaya çalışın.
    Şuan takıldığınız sorunu geçseniz bile 2 gün sonra gene farklı sorunlar yaşayacaksınız.
    Ne için aldığınızı bilmiyorum ama 8 yıldır 1 kere bile ne ajax ne php ile iş yaparken buton üstünden value veya id değeri çekmedim.
  • 21-01-2018, 20:52:26
    #5
    Misafir adlı üyeden alıntı: mesajı görüntüle
    Butondan value almanız yanlış bir hareket bence, sistemi daha normal herkesin kullandığı şekillerde yazmaya çalışın.
    Şuan takıldığınız sorunu geçseniz bile 2 gün sonra gene farklı sorunlar yaşayacaksınız.
    Ne için aldığınızı bilmiyorum ama 8 yıldır 1 kere bile ne ajax ne php ile iş yaparken buton üstünden value veya id değeri çekmedim.
     <input type="hidden" name="tabTrigger" id="tabTrigger" />
                <script>
                            $("#save-continue").click(function () {
                                var id = $(this).attr('data-id'); // $(this) refers to button that was clicked
                                $("#tabTrigger").val(id);
                            });
                </script>
    bu şekil çözdüm hocam. Teşekkürler.
  • 01-02-2018, 10:22:03
    #6
    hemen hemen aynı sorunu ben de yaşıyorum, select yerine buttondan value almaya çalışıyorum ama olmuyor yapamadım.
    @tyesil;tavsiye etmiyor ama select yerine başka bir alternatif yok mudur? button daha cazip ve tasarıma uygun olduğundan onu kullanmak istiyorum.
  • 01-02-2018, 10:33:59
    #7
    Misafir
    Bemica adlı üyeden alıntı: mesajı görüntüle
    hemen hemen aynı sorunu ben de yaşıyorum, select yerine buttondan value almaya çalışıyorum ama olmuyor yapamadım.
    @tyesil;tavsiye etmiyor ama select yerine başka bir alternatif yok mudur? button daha cazip ve tasarıma uygun olduğundan onu kullanmak istiyorum.
    Genel olarak şöyle bir tavsiye veriyim herkes çünkü aynı noktada hata yapıyor.
    Elinizde benzersiz bir key yokmu zaten sizin. Elinizdeki veritabanından çektiğiniz ID değeri sayfa içinde ikilenmiyor.
    Ulaşmak istediğiniz hidden input'a "class" veya "id" olarak şu ismi verin "input_ID" buradaki ID yazan yer sizin veritabanınızdaki 3-5 gibi olan değer olsun.
    Yok illa buton mu kullanacaksınız data-id="" değeri kullanmayın ulaşmak için. "button_ID" şeklinde id, class vs. tanımlayın.
    Sonrasında da explode komutu ile parçalayın.
    Böylece tüm inputlarınız benzersiz olacak ve buton, select vs. den değer çekmek zorunda kalmayacaksınız.
    Etstur, jollytur vs. sitelerine girip bir tane otel aratın sonra sayfa kaynağı görüntüle deyip "hidden" kelimesini aratın.
    20 tane alt alta hidden input göreceksiniz. Bu işin genel mantığı bu çünkü. Hidden itemin varolma sebebi bu tür olaylar zaten.
  • 01-02-2018, 10:40:41
    #8
    İlginiz için teşekkür ederim @tyesil; aşağıda input ve butonlarla fonksiyonum var fakat bir türlü çalıştıramadım, butondaki value değeri ile inputtaki değer aynı ve fakar jquery görmüyor tanımıyor da haliyle sonuç sıfır. hatayı nerede yapıyorum acaba.
    <form class="form-inline ng-pristine ng-valid" id="k_tip" >
    <button class="btn btn-info" value="" onClick="result(1);">Hepsi<input   type="hidden" value="" id="k_tip_1"></button>
    <button class="btn btn-info" value="1" onClick="result(1,1);">Normal<input   type="hidden" value="1" id="k_tip_2"></button>
    <button class="btn btn-info" value="2" onClick="result(1,2);">Bekleyen<input   type="hidden" value="2" id="k_tip_3"></button>
    </form>
    function result(val) {
    if(val=="1") {
    $("#suanval").val(1);
    $("#result").html('<div class="load"><img src="img/712.GIF"></div>');
    }
    var id_no = $("#k_idno").val();
    var id_sahip = $("#k_idsahip").val();
    var tarih1 = $("#tarih1").val();
    var tarih2 = $("#tarih2").val();
    var satir = $("#k_satir").val();
    var durum = $("#k_durum").val();
    var tip = $("#k_tip").val();
    var rand = Math.random();
  • 01-02-2018, 10:49:09
    #9
    Misafir
    @Bemica; buton içine item yerleştirilmez.
    <form class="form-inline ng-pristine ng-valid" id="k_tip" >
    <button class="btn btn-info" value="" onClick="result(1);">Hepsi</button>
    <button class="btn btn-info" value="1" onClick="result(1,1);">Normal</button>
    <button class="btn btn-info" value="2" onClick="result(1,2);">Bekleyen</button>
    <input   type="hidden" value="" id="k_tip_1">
    <input   type="hidden" value="1" id="k_tip_2">
    <input   type="hidden" value="2" id="k_tip_3">
    </form>
    if(val=="1") {
        var input_degeri = $("#k_tip_"+val).val();
        alert(input_degeri);
    }