Konuyu görüntüle
IUCODERS FORUM > Programlama > .NET > asp.net+javascript sorunu
Yazar
aliolci


avatar
en dipten taa derind
Kayıt: 19.01.2006
17.12.2007-21:37 #32966

function odenecek(){
    var fiyat=<%Response.Write(Request.QueryString["fiyati"]); %>
    var miktar=document.getElementById(<%Response.Write("'"+txtMiktar.ClientID+"'");%>)
    var tutar=document.getElementById(<%Response.Write("'"+txtTutar.ClientID+"'");%>)
    tutar.value=miktar.value*fiyat
    
    }



yazdığım bu javascript ile 'odenecek' fonksiyonu çağırıldığında bir querystring den diğeri bir asp.net kontrolünden olmak üzere 2 değeri carpip baska bir asp.net textbox kontrolunun icine yazdirmak istiyorum ancak ben bu islemi yapmak icin butonuma tikladigimda (buton normal bir html input) tutar degiskeniyle tuttugum asp.net textbox kontrolunun icerigi bos olarak goruntuleniyor java scriptn asp.net ile olan calismasini tam bilmiyorum ama sanırım butonuma bastigimda sayfa postbac ediliyor ve bu sebepten oturu tutar textbox im in value si yeniden default degeri olan bos "" yazi olarak set ediliyor acaba ben dogrumu dusunuyorum bu islemi gerceklestirmenin yolu nedir butonum "runat=server" olarak set edilmis bir formun icinde bulunuyor acaba asp.net bu sekildeki formlarin icinde gerceklesen butun submit islemlerini default olarak postback mi ediyor yanitlari bekliorm biggrin





Cant you see the writing on the wall?
"die young gonna die young"
So! Live for today
Tomorrow never comes..

Yazar
orhan


avatar
istanbul
admin
Kayıt: 17.11.2005
17.12.2007-23:15 #32976
function odenecek(){
var fiyat=<%Response.Write(Request.QueryString["fiyati"]); %>
var miktar=document.getElementById(<%Response.Write("'"+txtMiktar.ClientID+"'");%>)
var tutar=document.getElementById(<%Response.Write("'"+txtTutar.ClientID+"'");%>)
tutar.value=miktar.value*fiyat
return false;
} 

return false yaparsan post etmez. type="submit" olan butonlar post eder
type="button" olursa etmez





N/A
Yazar
tarikkranda


avatar

Kayıt: 07.01.2006
21.12.2007-03:11 #33064
Ali öncelikle Response.Write vs. kullanmana gerek yok.
Ayrıca query stringden alacagın degeri de javascript ile kod artık localdeykende alabilirsin. Koydugun HTML butonun type i button ise sayfan post olmaz, sadece cagırdıgın javascript fonksyionu calısır.

Yani HTML butonun su şekilde olmalı design kısmında;
 <input id="Button2" type="button" value="Hesapla" onclick=odenecek() />


Bunun haricinde query string parametrelerini ayırabilmek için bir javascript yazman gerekir. Bunun içinde internette bir sürü kod bulabilirsinki ben sana bir tane vereyim. odenecek javascript fonksiyonu nuda su sekilde yazarsan canavar calısır:))

Umarım düzgün görünür:))


    <script language=javascript>
    function odenecek(){
        var fiyat=gup('fiyati');
        document.forms[0]['txtTutar'].value = document.forms[0]['txtMiktar'].value * fiyat;    
    } 
    
    function gup( name )
    {
        name = name.replace(/[[]/,"[").replace(/[]]/,"]");
        var regexS = "[?&]"+name+"=([^&#]*)";
        var regex = new RegExp( regexS );
        var results = regex.exec( window.location.href );
        if( results == null )
            return "";
        else
            return results[1];
    }
    </script>




Hata verirse burda regular expression da parantezler falan kaybolmus olabilir.
http://www.netlobo.com/url_query_string_javascript.html
adresinden orjinalini alabilirsin.
Bu da ASp.NET kontrollerine erismek icin bir ornek sayfa buldum bookmarklarına kaydetmen icin ileride tekrar hatırlaman gerekirse;
http://www.devx.com/tips/Tip/28332

Kolay gelsin.





Del.icio.us
Digg
Facebook
Furl
Google
Blink
Simpy
Spurl
Y! MyWeb