2015-02-17 2 views
-1

У меня есть приложение на скрипте VB.net и Java, которое отлично работает в IE в режиме совместимости, но не работает в Chrome. Поскольку я открыл инструмент разработчика, он показывает сообщения типа;Приложение не работает должным образом на chrome

Uncaught NoModificationAllowedError: Failed to set the 'innerText' property on 'HTMLElement': The 'input' element does not support text insertion. TravelPolicy.aspx?PlanType=Individual:1783 captureEvents() is deprecated. This method doesn't do anything. releaseEvents() is deprecated. This method doesn't do anything. Uncaught NoModificationAllowedError: Failed to set the 'innerText' property on 'HTMLElement': The 'input' element does not support text insertion. TravelPolicy.aspx?PlanType=Individual:1905

Это моя ASPX страница

<%@ Page Language="VB" AutoEventWireup="false" EnableEventValidation="false" CodeFile="TravelPolicy.aspx.vb" 
 
    Inherits="Products_Travel_CODE_TravelPolicy" %> 
 

 
<%@ Register Assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" 
 
    Namespace="System.Web.UI" TagPrefix="asp" %> 
 
<%@ Import Namespace="System.Data" %> 
 
<%@ Register Assembly="RJS.Web.WebControl.PopCalendar, Version=10.0.2512.14064, Culture=neutral, PublicKeyToken=815cf5007f7d0455" 
 
    Namespace="RJS.Web.WebControl" TagPrefix="rjs" %> 
 
<%@ Register Assembly="RJS.Web.WebControl.PopCalendar" Namespace="RJS.Web.WebControl" 
 
    TagPrefix="rjs" %> 
 
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %> 
 
<%@ Register Src="~/Controls/wucAddress.ascx" TagName="wucAddress" TagPrefix="uc1_Cust" %> 
 
<%@ Register Src="~/Controls/wucTravelAddress.ascx" TagName="wucTravelAddress" TagPrefix="uc1_Cover" %> 
 
<%@ Register Src="~/Controls/wucHypothecationAddress.ascx" TagName="wucHypothecationAddress" 
 
    TagPrefix="uc2" %> 
 
<%@ Register TagPrefix="mbclb" Namespace="MetaBuilders.WebControls" Assembly="MetaBuilders.WebControls.CheckedListBox" %> 
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
 
<html xmlns="http://www.w3.org/1999/xhtml"> 
 
<head id="Head1" runat="server"> 
 
    <title>Untitled Page</title> 
 
    <link href="../../../App_Themes/REL/Style.css" type="text/css" rel="stylesheet" /> 
 
    <link href="../../../App_Themes/Verification/Style.css" type="text/css" rel="stylesheet" media="all" /> 
 
    
 
    <script type="text/javascript" src="../../../Script/print.js"></script> 
 
    <%-- Added Later as u suggest--%> 
 
    <link rel="stylesheet" type="text/css" href="/admin/css/navigation.css" /> 
 

 
    <script language="vb" runat="server">  
 
    
 
     <System.Web.Services.WebMethod()> _ 
 
      Public Shared Function CheckPassportForBlackList(ByVal pass1 As String, ByVal pass2 As String, ByVal pass3 As String, ByVal pass4 As String, ByVal cookie As String) As String 
 
      Dim ConsPassPort As String = "" 
 
     
 
      If pass1 <> "" Then 
 
       ConsPassPort = ConsPassPort + pass1 + "," 
 
      End If 
 
      If pass2 <> "" Then 
 
       ConsPassPort = ConsPassPort + pass2 + "," 
 
      End If 
 
      If pass3 <> "" Then 
 
       ConsPassPort = ConsPassPort + pass3 + "," 
 
      End If 
 
      If pass4 <> "" Then 
 
       ConsPassPort = ConsPassPort + pass4 + "," 
 
      End If 
 
     
 
     
 
      
 
      Dim ChkVal As String = "" 
 
      If ConsPassPort <> "" Then 
 
       ConsPassPort = ConsPassPort.Substring(0, ConsPassPort.Length - 1) 
 
      
 
       'Dim Momobj As New BlockedPassportStatusClient 
 
       'Dim response As New Res_PassportDC 
 
       Dim objComFun As New CommonFunctions 
 
       Dim message As DataTable = New DataTable 
 
      
 
       Try 
 
        'response = Momobj.StatusOfMultiBlockedPassport(ConsPassPort) 
 
        'message = response.DtPassport 
 
        message = objComFun.GetPassportBlockedStatusMultiple(ConsPassPort) 
 
       Catch ex As Exception 
 
        ChkVal = ex.ToString 
 
        Return ChkVal 
 
       End Try 
 
      
 
       If message.Rows.Count > 0 Then 
 
        If message.Rows(0)(1).ToString().ToLower() = "true" Then 
 
         ChkVal = "This Passport Number " + message.Rows(0)(0) + " is blocked.You can not issue Policy" 
 
        End If 
 
       End If 
 
       If message.Rows.Count > 1 Then 
 
        If message.Rows(1)(1).ToString().ToLower() = "true" Then 
 
         ChkVal = ChkVal + "This Passport Number " + message.Rows(1)(0) + " is blocked.You can not issue Policy" 
 
        End If 
 
       End If 
 
       If message.Rows.Count > 2 Then 
 
        If message.Rows(2)(1).ToString().ToLower() = "true" Then 
 
         ChkVal = ChkVal + "This Passport Number " + message.Rows(2)(0).ToString() + " is blocked.You can not issue Policy" 
 
        End If 
 
       End If 
 
       If message.Rows.Count > 3 Then 
 
        If message.Rows(3)(1).ToString().ToLower() = "true" Then 
 
         ChkVal = ChkVal + "This Passport Number " + message.Rows(3)(0) + " is blocked.You can not issue Policy" 
 
        End If 
 
       End If 
 
      End If 
 
      Return ChkVal 
 
     End Function 
 
    </script> 
 

 
    <script type="text/javascript" language="javascript"> 
 

 

 
function checkTextAreaMaxLength(textBox,e, length) 
 
{ 
 
} 
 
More java script functions 
 

 

 
    </script> 
 

 
    <script type="text/javascript" src="../../../Script/help.js"></script> 
 
    
 
    <script type="text/javascript" src="/admin/js/textbox.js"></script> 
 

 
    <%-- Added Later as u suggest--%> 
 

 
</head > 
 
</html>

Пожалуйста, помогите исправить.

+1

Похоже, ваше приложение полагается на нестандартное поведение из старых версий IE. Chrome поддерживает только режим стандартов, поэтому вам нужно будет обновить код приложения, чтобы работать в Chome по частям, вызывая ошибки, которые вы опубликовали. –

ответ

0

Это действительно должно считаться выполненным, если вы можете указать на него стандартный браузер, такой как хром, Firefox, Safari и даже IE в режиме стандартов, и он функционирует правильно. Говоря, что вы можете использовать только IE, и он должен быть в режиме совместимости и что «он работает» не имеет большого смысла. :)

Ошибки показывают, что у вас отсутствуют файлы в местах (по отношению к корню сайта), которые приложение пытается найти и загрузить (но их там нет или не может быть подано) эти существа;

/Admin/css/[name].css 
/Admin/js/[name].js 

Без кода я бы предположить, что вы строите свой проект таким образом, что общие вещи, как текстовые поля скриптов и общей навигации стиль будет в корневом каталоге вашего сайта (это может быть не так) в относительных местах из

/css 
/js 

Не могли бы вы проверить, если виртуальный корень/папку вашего веб-сервера указывает на правильное место на вашем компьютере и/или, что все файлы, которые вы пытаетесь загрузить в нужных местах. В конце концов, браузер просто выполняет простой HTTP GET, и если файлы не там, то он не может его загрузить.

попробовать положить очень простой файл test.html в корневом каталоге вашего веб-сайта со следующим содержанием (с соответствующими путями)

<!DOCTYPE html> 
<html> 
    <head> 
    <link rel="stylesheet" type="text/css" href="/admin/css/navigation.css" /> 
    </head> 
    <body> 
    <h1>Hello</h1> 
    <script src="/admin/js/textbox.js"></script> 
    </body> 
</html> 

и посмотреть, если они загружаются (если то, что вы просите, и ваш сервер настроен правильно, тогда вы не должны получать никаких 404. Этот файл также очень прост, чтобы ЛЮБЫЙ браузер (древний или современный) должен был предоставить этот контент ...

+0

тот же код и путь работают в IE. –

+0

Даже в IE, поскольку вам нужен режим совместимости и, конечно же, не любой другой браузер. IE даже не близок к соответствию стандартам W3C, особенно в режиме совместимости. Если большинство мировых браузеров (включая IE) не могут использовать ваше приложение, а меньшинство может, если они нарушают обычные действия браузера, я смиренно предлагаю, чтобы он не работал. Сначала запустите его во всех остальных (используя стандарты), затем исправьте его для более старого IE. Вместо того, чтобы создавать приложение для использования режима совместного доступа и форсирования Quirks, потому что даже MS советует вам не делать этого для новых приложений. –

+0

мой код Java Script заблокирован в Chrome, но в IE он работает нормально, тогда что делать .. ?? пожалуйста, помогите –

0

Кроме всех (действующих) комментариев о пути (я предлагаю вам заменить все ../ на ~ /, так что в итоге вы получите link href="~/App_Themes/REL/Style.css - i е ваш App-тема путь на корне)

И кроме действительных комментария от @code Уникально:

It should really only be considered to work if you can point a standard browser like chrome, Firefox, Safari and even IE in standards mode at it and it functions correctly. Saying you can only use IE and it has to be in compatibility mode and that "it works" doesn't make much sense. :)

Мы все недостающих точки вы пытаетесь установить InnerText свойство входного управления, которое - как вы можете видеть в сообщении об ошибке - недействительно. Входной элемент управления имеет свойство value, а не внутренний текст. Итак, посмотрите на это: Set the value of an input field и измените свой javascript соответствующим образом.

У этого ничего нет, чтобы сделать с вашим внутренним кодом, насколько это ужасно. Это просто стандарт javascript.

Чтобы подчеркнуть «IE Compat режим» точка: Вы не может полагаться на IE в режиме Compat для него «работает нормально».

  • Если это только работает в Compat режиме IE он сломан.
  • Если он работает на все остальное, и он также работает в режиме совместимости с IE, вам повезло.
+0

OP обновил код, чтобы отобразить целый набор новых сообщений об ошибке :) –

+0

Этот: «" Uncaught NoModificationAllowedError: Не удалось установить свойство 'innerText' на 'HTMLElement': Элемент 'input' не поддерживает вставку текста. ""? – Leon

+0

Я только что добавил вкладку IE в chrome, теперь она работает нормально. Теперь помогите мне ... Я хочу проверить, добавлен ли плагин IE TAB или нет в браузере во время выполнения загрузки страницы. Мое приложение находится в VB.net. –

Смежные вопросы