У меня проблема, которая очень странная, и после поиска в Интернете весь день я не нашел ничего, что могло бы помочь.
Мы запустили наш сайт www.promatenvision.co.uk на прошлой неделе ипри переходе на веб-сайт и нажатии на контакт в правом верхнем углу отображается форма запроса, код которой приведен ниже (я пробовал это с обычными панелями обновления, а не с кодом telerik, и он делает то же самое)
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="enquiry.ascx.cs" Inherits="Promat.enquiry" %>
<telerik:RadAjaxPanel ID="rap" runat="server" Width="100%" OnAjaxRequest="rap_AjaxRequest"
LoadingPanelID="ralp">
<div id="enquiryWrapper">
<div id="detailsDiv">
<h2>
Your Details</h2>
<p>
<telerik:RadTextBox ID="txtName" runat="server" Width="180" EmptyMessage="Name" />
</p>
<p>
<telerik:RadTextBox ID="txtTel" runat="server" Width="180" EmptyMessage="Telephone" />
</p>
<p>
<telerik:RadTextBox ID="txtEmail" runat="server" Width="180" EmptyMessage="Email" />
<asp:HiddenField ID="hidSubject" runat="server" ClientIDMode="Static" />
</p>
</div>
<div id="requestDiv">
<h2>
Nature of your enquiry</h2>
<textarea id="EnqTxtBx" class="enqText" cols="35" rows="8"></textarea>
</div>
<div id="submitDiv">
<h2>
Submit your request</h2>
<input id="sendBtn" type="button" class="clickable" onclick="SendEnquiry()" value="SEND" />
<input id="cancelBtn" type="button" class="clickable" onclick="SlideOut(0,'top','OUT')" value="CANCEL" />
<div id="EnqMessageDiv" runat="server" style="display: none;">
<img src="./themes/cross.png" alt="Invalid: " runat="server" id="MessageImg" style="width: 16px; height: 16px;" />
<asp:Label ID="MessageLbl" runat="server"></asp:Label>
</div>
</div>
</div>
</telerik:RadAjaxPanel>
<telerik:RadScriptBlock ID="rsb" runat="server">
<script type="text/javascript">
function SendEnquiry()
{
var oAjax = <%= rap.ClientID %>;
var txtBx = document.getElementById("EnqTxtBx");
var EnqTxt = txtBx.value;
oAjax.ajaxRequest("Enq|"+EnqTxt+"|");
}
</script>
</telerik:RadScriptBlock>
<telerik:RadAjaxLoadingPanel ID="ralp" Runat="server" Skin="Default" Transparency="50">
</telerik:RadAjaxLoadingPanel>
Теперь, если вы нажмете кнопку отправить, ничего не произойдет вообще, и при этом в IE вы увидите, что на самом деле выдается ошибка JavaScript:
Сообщение: Sys.WebForms.PageRequestManagerParserErrorException: сообщениеполученный от сервера не может быть проанализирован.Строка: 868 Символ: 13 Код: 0
Строка 868 представляет собой следующую функцию ajax:
function Sys$WebForms$PageRequestManager$_endPostBack(error, executor, data) {
if (this._request === executor.get_webRequest()) {
this._processingRequest = false;
this._additionalInput = null;
this._request = null;
}
var handler = this._get_eventHandlerList().getHandler("endRequest");
var errorHandled = false;
if (handler) {
var eventArgs = new Sys.WebForms.EndRequestEventArgs(error, data ? data.dataItems : {}, executor);
handler(this, eventArgs);
errorHandled = eventArgs.get_errorHandled();
}
if (error && !errorHandled) {
throw error;
}
}
Теперь, если вы перейдете на www.promatenvision.co.uk/promat.aspx (это документ по умолчанию в IIS 7, где он размещен) и попробуйте, чтобы он заработал.Отныне, независимо от того, на какой странице вы находитесь, код работает, поскольку он остается на promat.aspx, изменяя строку запроса для навигации по сайту.Вернитесь к наличию .co.uk в конце URL, и он снова сломается.
Может кто-нибудь помочь мне, так как я не знаю, куда идти дальше?
Заранее большое спасибо,
Mark