Elemente bağlı JS Olayını Manuel Çalıştırmak (ÇÖZÜLDÜ)

Web tabanlı uygulama geliştirme araçları(PHP, ASP vb...) ile ilgili konuları buraya yazabilirsiniz.
Cevapla
Kullanıcı avatarı
vkamadan
Kıdemli Üye
Mesajlar: 1935
Kayıt: 17 Mar 2004 03:52
Konum: Adapazarı
İletişim:

Elemente bağlı JS Olayını Manuel Çalıştırmak (ÇÖZÜLDÜ)

Mesaj gönderen vkamadan »

merhaba değerli üyeler ,

bir Input nesnesinin onkeyup olayına aşağıdaki JS fonksiyonu bağlanmış durumda,

Kod: Tümünü seç

function controlModel(){
                if($(this).val()==2013){
                    $("#DateContainer").show();
                    
                    if($("#plateNo").val()=="YK"){
                        $("#RegistrationDate").val("18.02.2013");
                    }

                    $("#IsRequiredRegistrationDate").val("true");
                }
            }
ben farklı bir javascript içinden controlModel fonksiyonu bağlandığı nesneyide parametre geçerek çalıştırmam gerekiyor , bağlantığı nesnenin elementId "ModelNumber", Js den pek anlamam fakat sanırım ilgili fonksiyon içindeki "this" dediği şey SENDER oluyor ve sender geçmeden direk controlModel() şeklinde çağıramıyorum, denediklerim ;
controlModel(ModelNumber);
controlModel(#ModelNumber); vb.. varyasyonlar, bunun bir yöntemi var mı?
En son vkamadan tarafından 19 Şub 2013 09:57 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
Volkan KAMADAN
www.polisoft.com.tr
Kullanıcı avatarı
SimaWB
Üye
Mesajlar: 1316
Kayıt: 07 May 2009 10:42
Konum: İstanbul
İletişim:

Re: Elemente bağlı JS Olayını Manuel Çalıştırmak

Mesaj gönderen SimaWB »

Kod: Tümünü seç

controlModel(document.getElementById("ModelNumber"))
şeklinde denemelisin. Yada Jquery kullanıyorsan:

Kod: Tümünü seç

controlModel($("#ModelNumber"))
En son SimaWB tarafından 18 Şub 2013 05:37 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
There's no place like 127.0.0.1
Kullanıcı avatarı
Battosai
Üye
Mesajlar: 1316
Kayıt: 01 Eki 2007 12:02
Konum: Ankara

Re: Elemente bağlı JS Olayını Manuel Çalıştırmak

Mesaj gönderen Battosai »

Fonksiyonu aşağıdaki gibi değiştirin çalışacaktır....

Kod: Tümünü seç

    function controlModel(element){
                    if($('#'+element).val()==2013){
                        $("#DateContainer").show();
                       
                        if($("#plateNo").val()=="YK"){
                            $("#RegistrationDate").val("18.02.2013");
                        }

                        $("#IsRequiredRegistrationDate").val("true");
                    }
                }

Kullanıcı avatarı
vkamadan
Kıdemli Üye
Mesajlar: 1935
Kayıt: 17 Mar 2004 03:52
Konum: Adapazarı
İletişim:

Re: Elemente bağlı JS Olayını Manuel Çalıştırmak

Mesaj gönderen vkamadan »

@SimaWB , delphi de TWebBrowser ile ilgili sayfadaki JS yi çalıştırma aşamasında gerekliydi ilgili durum , fakat belirttiğin iki yöntemle de "80020101 hatası nedeniyle işlem tamamlanamıyor" hatası yaratıyor ,
@Battosai , maalesef JS lere müdehale gibi bir şansım olmadığı için mevcut JS çalıştırmam gerekiyor.

aslında şöyle belirteyim ModelNumber ID sine sahip elementin "onkeyup" olayı mevcut, Document.GetElementById().FireEvent ile onchange , onblur vb gibi oalyları çalıştırabiliyorum fakat "onkeyup" aynı hatayı vererek çalışmıyor bende direk bağlandığı JavaScripti çalıkştırmak istediğimde ilgili JS kendi içinde kullandığı THIS değişkenine parametreyi geçemiyorum.
Volkan KAMADAN
www.polisoft.com.tr
Kullanıcı avatarı
vkamadan
Kıdemli Üye
Mesajlar: 1935
Kayıt: 17 Mar 2004 03:52
Konum: Adapazarı
İletişim:

Re: Elemente bağlı JS Olayını Manuel Çalıştırmak

Mesaj gönderen vkamadan »

merhaba ,
TWebBrowser içinde aşağıdaki JS i çalıştırarak sorunu çözdüm, ilgili komudu tesadüf eseri aynı sayfada yer alan başka bir JS içinde gördüm.

Kod: Tümünü seç

$("#ModelNumber").trigger("keyup");
Volkan KAMADAN
www.polisoft.com.tr
Cevapla