Duyuruyu Kapat
Facebook Gözat
Twitter Gözat

Buttona Basınca Mesajı Tex Alanına Yazdırma

Konu, 'Javascript' kısmında muglali20 tarafından paylaşıldı.

  1. muglali20

    muglali20 Yeni Üye

    Kayıt:
    25 Şubat 2018
    Mesajlar:
    18
    Beğenilen Mesajlar:
    0
    Şehir:
    İstabul
    Merhaba arkadaslar E-Ticaret Sitemde Sipariş geçmişine bil girerken hazır metinlerım var bunları her defasında baska landan kopyalayıp yapıştırıyorum bunun yerine aşağudakı gibi olsa sipariş durumu ne ise ona tıklayınca metin alanına Mesajı nasıl Yazdırabılırım. Onaylandı tıklanınca içeriye girdiğim mesajı textarea alanına yazdırabılır mıyız.

    HTML:
    <p>
      <textarea name="comment" rows="8" id="input-comment" class="form-control"></textarea>
      </p>
    <p>
      <input name="Ödeme Onayland" type="button" value="Ödeme Onayland">
      <input name="Ödeme Bekleniyor" type="button" value="Ödeme Bekleniyor">
      <input name="Kargoya Verildi" type="button" value="Kargoya Verildi">
    </p>
    
     
  2. sedirAğacı

    sedirAğacı Daimi Üye

    Kayıt:
    2 Mart 2016
    Mesajlar:
    903
    Beğenilen Mesajlar:
    237
    Meslek:
    Bilgisayar programcısı.
    Şehir:
    Aydın
    Kod:
    <!DOCTYPE html>
    <html>
    <head>
    
    </head>
    <body style="padding: 70px;"
    
    
    <p>
      <textarea name="comment" rows="8" id="input-comment" class="form-control"></textarea>
      </p>
    <p>
      <input name="Ödeme Onayland" type="button" value="Ödeme Onayland" onclick="_doP(this.value, 'input-comment')">
      <input name="Ödeme Bekleniyor" type="button" value="Ödeme Bekleniyor" onclick="_doP(this.value, 'input-comment')">
      <input name="Kargoya Verildi" type="button" value="Kargoya Verildi" onclick="_doP(this.value, 'input-comment')">
    </p>
    
    
    
    </body>
    </html>
    
    
    <script type="text/javascript">
    
    
        function _doP(btValue, pTxaID) {
            document.getElementById(pTxaID).value = btValue;
    
            /* eğer açıklamayı, texArea içinde başka yazı varsa ve yazı kalsın, devamına buton açıklaması eklensin istiyorsan.
                document.getElementById(pTxaID).value += " " + btValue;
            */
        }
    
    
    </script>
    
     
  3. muglali20

    muglali20 Yeni Üye

    Kayıt:
    25 Şubat 2018
    Mesajlar:
    18
    Beğenilen Mesajlar:
    0
    Şehir:
    İstabul
    Hocam İlginiz İçin Teşekkürler ama bır sorun var Button İsmi Ödeme Onaylandı Olacak ama Buna Tıklayınca Mesaj Farklı Örneğin
    Merhaba; Mujdat Siparişinizin Ödemesi Onaylanmıştır En Kısa Sürede Kargoya Verilerek Takip Bilgileri Tarafınıza Gönderilecektir
    Şeklınde yazmak istiyorum onu nasıl yapabılırım
     
  4. sedirAğacı

    sedirAğacı Daimi Üye

    Kayıt:
    2 Mart 2016
    Mesajlar:
    903
    Beğenilen Mesajlar:
    237
    Meslek:
    Bilgisayar programcısı.
    Şehir:
    Aydın
    Yöntem: her programcı kendi tecrübesine göre farklı bir yol izleyebilir. Ancak öz aynıdır.

    Önce mesajın sabit ve değişken kısımları belirlenir.
    Sabit kısımlar bir yerde depolanır.

    Sabit kısım açıklaması bir kaç tane ise ve ilerdede değişmeyecekse, kodada gömülebilir.
    Değişken kısımlar ise, son aşamada sabit kısım içine eklenir ve textArea ya konulur.

    "Merhaba; Mujdat Siparişinizin Ödemesi Onaylanmıştır En Kısa Sürede Kargoya Verilerek Takip Bilgileri Tarafınıza Gönderilecektir"

    Bu metinde "Müjdat" müşteri adı olsa gerek, tablodan alınıyor, sürekli değişiyor.
    Kalan sabit metin. Ama bu sabit metinde, tıklanan butona göre değişiyor. Yani buton sayısı kadar.

    Şimdi ben, en basit halini yapayım... Butona göre değişen açıklamayı bir dizi içinde javascript koda gömeyim. Tabi bunu profesyonelce yapmak isteseydim, epey düşünüp bir karar vermem gerekirdi, büyük ihtimallede işi isteyenle konuşup, duruma göre txt, xml veya DB tabloda tutmalımı karar vermek ... her neyse tecrübe çok olunca, konuyu çok uzatıp yayıyorum, kafa karıştırıyorum...

    Şimdi butona göre değişen sabit açıklamaları bir dizide javascript kod içine koyalım.
    Müşteri adınıda veri tabanından geldiğini varsayacağız. Onuda sayfadaki bir <span> alanda tutuyorsun varsayalım,oradan alalım.

    önce kodu yazıp test edeyim, sora buraya asarım.
     
  5. muglali20

    muglali20 Yeni Üye

    Kayıt:
    25 Şubat 2018
    Mesajlar:
    18
    Beğenilen Mesajlar:
    0
    Şehir:
    İstabul
    Evet Müşteri adına göre değişecek onu eklerım sanırım siz dediğiniz şekılde verırsenız hemen denerım ilginize teşekkürler
     
  6. sedirAğacı

    sedirAğacı Daimi Üye

    Kayıt:
    2 Mart 2016
    Mesajlar:
    903
    Beğenilen Mesajlar:
    237
    Meslek:
    Bilgisayar programcısı.
    Şehir:
    Aydın
    Kod:
    <!DOCTYPE html>
    <html>
    <head>
    
    </head>
    <body style="padding: 70px;">
    
    Müşteri rumuzu : <span id="spnRumuz">Müjdat</span>
    <p>
      <textarea name="comment" rows="8" id="input-comment" class="form-control"></textarea>
      </p>
    <p>
      <input name="Ödeme Onayland" type="button" value="Ödeme Onayland" onclick="_doP(0, 'input-comment')">
      <input name="Ödeme Bekleniyor" type="button" value="Ödeme Bekleniyor" onclick="_doP(1, 'input-comment')">
      <input name="Kargoya Verildi" type="button" value="Kargoya Verildi" onclick="_doP(2, 'input-comment')">
    </p>
    
    
    
    </body>
    </html>
    
    
    <script type="text/javascript">
    
    
    var mArr = [
            "Merhaba; -&&&- Siparişinizin açıklama 1 ...",
            "Merhaba; -&&&- açıklama 2 ...",
            "Merhaba; -&&&- açıklama 3 ..."]
    
        function _doP(btNo, pTxaID) {
            const mustRumuz = document.getElementById("spnRumuz").innerText;
            document.getElementById(pTxaID).value = mArr[btNo].replace("-&&&-", mustRumuz);
        }
    
    
    </script>
    
    Müşteri ismi, metnin başında, sonunda değilde, arada olduğu için, araya koymak gerekiyordu. En basiti replace ile.
    İsmin geleceği yere -&&&- karakterlerini koydum. Replace yapınca araya isim kolayca girdi. Sen istersen farklı yapabilirsin.

    Farklı browserlarda denemek lazım.
     
    Son düzenleme: 14 Mayıs 2018
  7. sedirAğacı

    sedirAğacı Daimi Üye

    Kayıt:
    2 Mart 2016
    Mesajlar:
    903
    Beğenilen Mesajlar:
    237
    Meslek:
    Bilgisayar programcısı.
    Şehir:
    Aydın
    Bide kısa bikaç kullanıcı dostu yazılım ip ucu vereyim. :)

    Yanlış butona basarsa.?
    Kullanıcı kişinin girmesi gereken kayıt çoksa, yanlış butona basıp kaydedebilir. önceki işlem kodunu bi yerde saklar, bi sonraki doğru butona basmasını sağlarım.
    Şimdi bu nu yazınca, akla şu geliyor.

    Madem önceki aşama kodunu tutuyorsun, o zaman direk text area ya ilgili aşamanın açıklamasını koy, niye bide butona tıklatıyorsun, hataya açık hale getiriyorsun.?:)

    başka bir yardımcı ise renkler...

    Üç butona ait yazıyı farklı renklerde textarea içine koyarsan, yanlış butona basınca beyin hatayı algılayacaktır. Hep aynı buton aynı renke şartlanan beyin, farklı renk algılayınca süreci durduracaktır...:) Text area içine renkli yazılamıyorsa, kutu kenarına belirgin bir renk koyarsın.

    nasıl olsa bu kısmı müşteri görmüyor, istediğin renkleri kullanabilirsin. kaydederken renk olmayacak tabi...
     
  8. muglali20

    muglali20 Yeni Üye

    Kayıt:
    25 Şubat 2018
    Mesajlar:
    18
    Beğenilen Mesajlar:
    0
    Şehir:
    İstabul
    TAMAMDIR HOCAM ÇOK TEŞEKKÜRLER SÜPER OLDU:))