2017-02-16 15 views
7

Merhaba Öğeyi eklerken sepete eklendiğinde ve ayrıca sepet öğelerini gösteren bir açılır pencerenin açılacağı kodu uygulamıştım. Masaüstünde iyi çalışıyor, ancak mobil cihazda çalışmıyor. Mobil cihaz için oKaçan ReferenceError: show değeri tanımlanmadı (Yalnızca mobil aygıt için)

İşte
Uncaught ReferenceError: showvalue is not defined 

olarak hatayı nal benim aşağıda kodudur

<script type="text/javascript"> 
function showvalue(value, product) { 

    $('#<%= lblproduct1.ClientID %>').text(product); 
    $('#<%= lblVessel.ClientID %>').text(value); 
    $('.cart_popup').show(); 
    setTimeout(function() { 
     $('.cart_popup').fadeOut('slow'); 
    }, 5000); 
    return false; 
} 
function Showprogress() {    
    $('#<%= Progress.ClientID %>').show();  
} 

.ascx sayfa

<asp:Button ID="AddToBasketButton" OnClientClick="Showprogress()" runat="server" OnClick="AddToBasketButton_Click" EnableViewState="false" ValidationGroup="AddToBasket" Text="Add to Cart" /> 

Benim .cs tarafında kod üzerinde

Html tarafı (Toplam ve ürün kalitesi geçmiş)

ScriptManager.RegisterClientScriptBlock(this.Page, typeof(UpdatePanel), UniqueID, "showvalue('" + Total + "','" + productquantity + "');", true); 

Yalnızca mobil aygıtla ilgili sorun yaşıyorum. Tıklatıldığında, sayfam yenilenir ve açılır pencere açılmıyor

+0

mobil çalışmaya başladım olmuştu benim açılır pencere yerleştirilmiştir ki (fiili soruya göre) düşünüyorum.net, ancak jQuery mobil olarak örneğin "tıklayın" ve "ayrı ayrı olaylar" dokunun, bu gibi bir sorun olabilir mi? – Gunnar

+0

işlevinizi çağıran herhangi bir kod görmedim 'showvalue()' –

+0

@Anant .cs kodundan –

cevap

1

Jquery açılır penceresini kaldırdım ve Ajax Modal açılır penceresini kullandım. Açılırken, .cs tarafından çağıran, ancak 5 saniye sonra otomatik olarak gizlemek için açılan bu pencerede, aşağıdaki kodu kullanıyorum.

<asp:Button ID="AddToBasketButton" OnClientClick="Showprogress();" runat="server" OnClick="_Click" Text="button" />//button click and onclient click 
//Below div is only showing processing image :-) 
<div id="Progress" runat="server" style="display: none;"> 
<img src="../images/spinner.gif" /> 
</div> 

Benim komut

<script type="text/javascript"> 
$(document).ready(function() { hide_pop(); }); 

function Showprogress() {  
    $('#<%= Progress.ClientID %>').show(); 
    hide_pop(); 
    return false; 
} 
function hide_pop() { 
    setTimeout(function() { 
     $('.popup_cart_main').fadeOut('slow');//Popup Panel class 
     $('.modalBackground').fadeOut('slow');//Background blacklayout Class 
    }, 5000);  
    return false; 
} 

Modalpopup

<asp:LinkButton ID="lnkDummy" runat="server" ></asp:LinkButton> 
<cc1:ModalPopupExtender ID="ModalPopupExtender1" BehaviorID="mpe" runat="server" 
PopupControlID="pnlPopup" TargetControlID="lnkDummy" BackgroundCssClass="modalBackground" > 
</cc1:ModalPopupExtender> 
<asp:Panel ID="pnlPopup" runat="server" CssClass="popup_cart_main" Style="display: none"> 
<div class="cart_popup" >    
     Solved   
     </div> 
</asp:Panel> 

Bu kod Android

iphone & dahil tüm tarayıcıda çalışan ve tüm mobil edilir

Ayrıca durumda ben jquery pop-up kaldırıldı olmasaydı ve sadece kodunun altına ben asp ile familar değilim çok

$(document).ready(function() { showvalue(); });// based on actual question 
0

Komut dosyanızın RegisterClientScriptBlock'u çağırmadan önce oluşturulduğundan emin olun. HTML ayrıştırma doğrusaldır.

+0

Eğer betik düzgün bir şekilde başlatılmamış neden masaüstünde çalışmalı? –

+0

İşlem/oluşturma sırasının mobilde aynı olup olmadığından emin değilim. Hata, yöntem tanımının bulunamadığını belirtir. bunu deneyin: uyarı (showvalue); – Dexion

0
  • Kapatma etiketini kopyalamayı ya da kodda da yapmadı mı?

Olmalıdır: C# içinde

<script type="text/javascript"> var jName = '<%=cName()%>'</script> 

: javascript olarak

:

<script type="text/javascript"> 
function showvalue(value, product) { 

    $('#<%= lblproduct1.ClientID %>').text(product); 
    $('#<%= lblVessel.ClientID %>').text(value); 
    $('.cart_popup').show(); 
    setTimeout(function() { 
     $('.cart_popup').fadeOut('slow'); 
    }, 5000); 
    return false; 
} 
function Showprogress() {    
    $('#<%= Progress.ClientID %>').show();  
} 
</script> 
  • başka bir yaklaşım deneyin

    protected string cName() { 
        return "examplevarcontent"; 
    }