2017-02-10 5 views
0

У меня есть функция JavaScript, которая срабатывает при размытии. Как ни странно, он работал нормально, когда я его запускал, и с тех пор я получаю сообщение об ошибке, которое говорит о функции JavaScript Not Defined, и он перестает работать. Я столкнулся с подобными проблемами, но ни один из советов не смог решить проблему. Asp.Net 3.5 Webforms, если это имеет значение. Я включил некоторые дополнительные функции и строки кода, которые могут быть не связаны с проблемой. Проблема, которую я имею в виду updateFiscalGrid, большая функция. HTML, который привязывается к событию, находится ниже функции.Функция JavaScript Не определено Ошибка (НО ОПРЕДЕЛЕН)

<%@ Page MasterPageFile="~/MasterPages/NPRPage.Master" CodeBehind="NPRFundingApplication.aspx.cs" Inherits="Tea.Hcf.Web.Secured.NPRFundingApplication" AutoEventWireup="true" Language="C#" EnableEventValidation="true" MaintainScrollPositionOnPostback="true" %> 

<%@ Register TagPrefix="ew" Namespace="eWorld.UI" Assembly="eWorld.UI" %> 
<%@ Register TagPrefix="hcf" Namespace="Tea.Hcf.Web" Assembly="Tea.Hcf.Web" %> 
<%@ Register Src="../Controls/NpCdnSearch.ascx" TagName="NpCdnSearch" TagPrefix="np1" %> 
<%@ Register Src="../Controls/NpStudentRoster.ascx" TagName="NpStudentRoster" TagPrefix="np2" %> 

<script type="text/javascript" language="javascript"> 
    //<![CDATA[ 

    function showMaxWin(nUrl) { 
     var h = 600; 
     var w = 800; 
     var features = 'resizable=1, width=' + w + ', height=' + h + ', top=0, left=0'; 
     NewWin = window.open(nUrl, 'NewWin', features); 
    } 

    function dateChangedCallback() { 
     updateSubTotals(); 
    } 

    function updateFiscalGrid(){ 
     var RelatedServicesCost = document.getElementById('<%= RPCB_SUPP_SVCS_SUBTOTAL3.ClientID %>').value; 
     var ResidentialCare = document.getElementById('<%= RPCB_RES_SVCS_SUBTOTAL3.ClientID %>').value; 
     var TotalCostforResPlacement = document.getElementById('<%= TotalResidentialPlacement.ClientID %>').value; 
     var SetAside = document.getElementById('<%= rblSetAsideMet.ClientID %>').value; 
     var LocalTaxSubtraction = document.getElementById('<%= LocalTaxShareSubtraction.ClientID %>').value; 
     var IDEABRelatedServiceCost = document.getElementById('<%= RelatedServicesSetAside.ClientID %>').value; 
     var IDEABDiscretionaryServicesCost = document.getElementById('<%= RelatedServicesDiscretionary.ClientID %>').value; 
     var IDEABREsidentialCare = document.getElementById('<%= ResidentialCareSetAside.ClientID %>').value; 
     var IDEABDiscResCare = document.getElementById('<%= ResidentialCareDiscretionary.ClientID %>').value; 
     var StateFSP = document.getElementById('<%= TotalEducationServices2.ClientID %>').value; 
     var Discretionary = document.getElementById('<%= DiscretionaryTotal.ClientID %>').value; 
     var IDEABAward = document.getElementById('<%= IdeaBAward.ClientID %>').value; 
     if(SetAside = '0'){ 
      Discretionary = LocalTaxSubtraction + IDEABRelatedServiceCost + IDEABDiscretionaryServicesCost + IDEABREsidentialCare + IDEABDiscResCare; 
     } 
     else { 
      Discretionary = LocalTaxSubtraction + IDEABDiscretionaryServicesCost + IDEABDiscResCare; 
     } 
     IDEABAward = (RelatedServicesCost + ResidentialCare + TotalCostforResPlacement) - Number(Discretionary)); 
     //IDEABAward = (Number(RelatedServicesCost) + Number(ResidentialCare) + Number(TotalCostforResPlacement)) - Number(Discretionary)); 
     document.getElementById('<%= DiscretionaryTotal.ClientID %>').value = Discretionary; 
     document.getElementById('<%= IdeaBAward.ClientID %>').value = IDEABAward; 
    } 


    //]]> 
</script> 




    <td> 
     <hcf:CurrencyBox ID="LocalTaxShareSubtraction" OnBlur= "updateFiscalGrid();" Precision="2" runat="server" /> 
    </td> 
+0

Привет! Вы проинспектировали код? Я имею в виду браузер. Возможно, некоторые переменные, установленные внутри вашей функции javascript '<%%>', вызывают ошибки в скрипте, делая функцию «не определена» – MarceloBarbosa

+0

Я решил это! Это было лишним) –

ответ

2

Использование инструментов разработки браузера можно ли вызвать функцию вручную из консоли. Если вы все еще получаете функция не определена, то сделайте следующее:

  • Проверить наличие опечаток
  • Если вы используете главную страницу, убедитесь, что вы не размещать ссылки на страницы сценария внутри контейнера тегов (которые получают перезаписана содержание страниц, это из личного опыта лол)
  • очистить кэш и перезагрузить страницу
+0

Я только что сказал, что решил. Это была дополнительная скобка –

0

в конце концов, ваш код на стороне сервера не имеет значения. Я мог бы быть написан на любом другом языке на стороне сервера.

Если вы видите эту ошибку в браузере, вам необходимо проверить код javascript, который был сгенерирован вашим серверным кодом.

После этого вы сможете увидеть, действительно ли функция определена или нет. Если нет, что-то не так с созданием кода JavaScript на стороне сервера.