Обратная передача формы MVC ajax открывает новые окна только при размещении в Windows Azure - PullRequest
0 голосов
/ 25 февраля 2012

У меня есть <div id="notesdiv"></div>, который заполняется от вызова ajax до частичного представления:

    @using (Html.BeginForm("Notes", "Contact", FormMethod.Post, new { id = "notesForm" }))
{
    @Html.ValidationSummary(true)

    <div id="NewNoteTextArea">@Html.TextArea("NoteContent", new { style = "width:98%" })</div>
    <div id="AddNoteButton">
        <input type="submit" value="Add Note" id="addNoteButton" />
    </div>   
}
<div id="NotesGrid">
    @Html.Grid(Model).Columns(column =>
{
...
}).Attributes(@class => "grid")

<script type="text/javascript">
    // wait for the DOM to be loaded
    $(document).ready(function () {
        // bind form and provide a simple callback function 
        $('#notesForm').ajaxForm(function (data) {
            $("#notesdiv").html(data);
            return false;
        });
    }); 
</script>

После нажатия кнопки Добавить заметку она должна обновлять div заметок без загрузкиновая страница.Это отлично работает на Asp.Net Dev Server, локальном IIS и даже на эмуляторе разработки Azure, но происходит сбой при размещении в Windows Azure - он отображает notesdiv на новой странице.

Ниже приводится ServiceConfiguration.Cloud.cscfg:

<?xml version="1.0" encoding="utf-8"?>
<ServiceConfiguration serviceName="WebMVC_Azure" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration" osFamily="1" osVersion="*">
  <Role name="WebMVC">
    <Instances count="1" />
    <ConfigurationSettings>
      <Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="UseDevelopmentStorage=true" />
    </ConfigurationSettings>
  </Role>
</ServiceConfiguration>

и ServiceDefinition.cscfg:

<?xml version="1.0" encoding="utf-8"?>
<ServiceDefinition name="WebMVC_Azure" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition">
  <WebRole name="WebMVC" vmsize="Small">
    <Sites>
      <Site name="Web">
        <Bindings>
          <Binding name="Endpoint1" endpointName="Endpoint1" />
        </Bindings>
      </Site>
    </Sites>
    <Endpoints>
      <InputEndpoint name="Endpoint1" protocol="http" port="80" />
    </Endpoints>
    <Imports>
      <Import moduleName="Diagnostics" />
    </Imports>
  </WebRole>
</ServiceDefinition>

Что мне здесь не хватает?Спасибо!

...