Skip to main content

AccessTr.neT


Vb.net Webbrowser Yeni Pencere Problemi

Vb.net Webbrowser Yeni Pencere Problemi

Çözüldü #1
https://ebeyanname.gib.gov.tr/index.html

Benim yukarıdaki sitedeki Giriş butonuna bastığımda yeni bir pencere açılıyor.

https://ebeyanname.gib.gov.tr/giris.html

ve beni bu sayfaya yönlendiriyor. Benim bu sayfayı Webbrowser ile görüntülemem gerekiyor. Yeni pencerede açtığı içinde sıkıntı oluyor. İçine veri entegre etmem gerekiyor...

Giriş sayfasında bir java kodu var. O kod yeni bir pencerede açılmadığı zaman otomatik index sayfasına yönlendiriyor.

Kod:
<script type="text/javascript">
// dont allow this file to be written in the address bar directly, it will be opened as a popup from index.jsp only
if (window.opener == null) window.location.replace(window.location.protocol + "//" + window.location.host + window.location.pathname.substring(0, window.location.pathname.lastIndexOf("/")) + "/index.html");

function checkUserNamePasswords() {
var re8digit=/^\d{8}$/
var un = document.getElementById("username");
var pwd2 = document.getElementById("password2");
var pwd1 = document.getElementById("password1");

if (un.value.search(re8digit) == -1 || un.value.length != 8) {
window.alert("Kullanıcı Kodu 8 rakamdan oluşmalıdır."); un.focus(); return false;
}
if(pwd2.value.length == 0) {
window.alert("Parola boş olamaz.");
pwd2.focus();
return false;
} else if(pwd2.value.length > 8) {
window.alert("Parola en fazla 8 harf veya rakamdan oluşmalıdır.");
pwd2.focus();
return false;
} else if(pwd1.value.length == 0) {
window.alert("Şifre boş olamaz.");
pwd1.focus();
return false;
} else if(pwd1.value.length > 6) {
window.alert("Şifre en fazla 6 rakamdan oluşmalıdır.");
pwd1.focus();
return false;
}
return true;
}
function checkForm() {
   try{
       if (!checkUserNamePasswords())
   return;
       ajaxLogin('eyeks');
   }catch(err){}
}
</script>

Veya yeni pencerede açtı benim o pencereyi Webbrowser'ı kontrol eder gibi kontrol edebilmem lazım. Yardımcı olursanız çok sevinirim.
.zip EBeyannameGiris.zip (Dosya Boyutu: 68,18 KB | İndirme Sayısı: 29)
Son Düzenleme: 04/12/2015, 15:44, Düzenleyen: Sherlock.Holmes.
Cevapla
#2
Örnek proje ekleyin lütfen.
AccessTr.Net teknik konular içeren bir sitedir. Bu tip sitelerde en iyi şekilde yardım alabilmeniz için Site Kurallarını mutlaka okumanız ve buna göre hareket etmeniz lazım.
Cevapla
#3
(04/12/2015, 15:13)alpeki99 yazdı: Örnek proje ekleyin lütfen.

Gerekli projeyi ekledim. Umarım bir çözüm üretebilirsiniz.
Cevapla
#4
Projenizi inceledim ve anladığım kadarıyla siz yeni pencere açılmasın tüm pencereler sizin programınızın formundaki browserda açılsın istiyorsunuz değil mi?

Eğer öyle ise kendi projemde kullandığım kodlarımı paylaşayım sizinle:

var webBrowser = ( WebBrowser )sender;

     if (webBrowser.Document != null)
     {
       HtmlElementCollection pageTextElements = webBrowser.Document.GetElementsByTagName( "a" );
       foreach (HtmlElement element in pageTextElements)
       {
         element.SetAttribute( "target", "_self" );
       }
     }

Bu kodları Browser'ın Proggres Changed olayına yazacaksınız. Kısacası sayfa yükleme işlemi devam ederken tarayıcıdaki tüm a taglarının target özelliğini _self yaparak yeni pencere değilde kendi sayfasında açılmasını sağlar.
AccessTr.Net teknik konular içeren bir sitedir. Bu tip sitelerde en iyi şekilde yardım alabilmeniz için Site Kurallarını mutlaka okumanız ve buna göre hareket etmeniz lazım.
Cevapla
#5
Hocam kullandığınız dille proje hazırlayarak bana gönderebilir misiniz?
Cevapla
#6
Sitenin kaynak koduna baktım Javascript ile sayfa açtırmışlar. Şimdi eve geçiyorum akşam fırsat olursa bakacağım.
AccessTr.Net teknik konular içeren bir sitedir. Bu tip sitelerde en iyi şekilde yardım alabilmeniz için Site Kurallarını mutlaka okumanız ve buna göre hareket etmeniz lazım.
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da