¿Por qué este jQuery AJAX PUT funciona en Chrome pero no en FF?

En Chrome, esto hace un HTTP PUT como debería, pero en FireFox 21 no lo hace. No hay errores en la consola de javascript o en el backend.

Aquí está el HTML:

<div id="createTeamModal" class="small reveal-modal">
        <form id="createTeamForm">
            <div class="row"><p id="teamFlavorText" class="lead">Building a new team</p></div>
            <div class="row">
                <div class="small-4 large-4 columns"><label>Team Name:</label></div>
                <div class="small-6 large-6 columns"><input name="teamName" id="teamName" type="text" size="20"/></div>
            </div>
            <div class="row"><p class="lead">Does this team work for a business?</p></div>
            <div class="row">
                <div class="small-4 large-4 columns"><label>Business Size:</label></div>
                <div class="small-6 large-6 columns">
                    <select id="businessSizeSelect" name="businessSizeSelect">
                    <option value="1">Nope, I work alone</option><option value="2">2 to 49</option><option value="3">50 to 99</option><option value="4">100 to 999</option><option value="5">1,000+</option>
                    </select>
                </div>
            </div>
            <div id="businessLocationDiv" class="row" style="display: none; margin-top: 20px;">
                <div class="small-4 large-4 columns"><label>Business Location:</label></div>
                <div class="small-6 large-6 columns">
                    <select id="businessLocationSelect" name="businessLocationSelect">
                    </select>
                </div>
            </div>
            <div id="businessTypeDiv" class="row" style="display: none; margin-top: 20px;">
                <div class="small-4 large-4 columns"><label>Industry:</label></div>
                <div class="small-6 large-6 columns">
                    <select id="businessTypeSelect" name="businessTypeSelect">                      
                    </select>
                </div>
            </div>
            <div class="row" style="margin-top: 20px;">
                <div class="large-offset-10 small-1 large-1 columns">
                    <button id="createTeamButton" class="small button">Create</button>
                </div>
            </div>
        </form>
        <a class="close-reveal-modal">&#215;</a>
    </div>

Y aquí está la jQuery:

$("#createTeamButton").click(function () {
    var teamObject = new Team();
    teamObject.description = $("#teamName").val();
    teamObject.businessSize = $("#businessSizeSelect").val();
    teamObject.businessType = $("#businessTypeSelect").val();
    teamObject.businessLocation = $("#businessLocationSelect").val();

    $.ajax({
        type: "PUT",
        url: "/ajax/rest/team",
        dataType: "json",
        data: JSON.stringify(teamObject),
        success: function () {
            // Reload the team select box
            loadTeamSelectBox();

            // Pop up the site create modal
            $('#createSiteModal').foundation('reveal', 'open');
        },
        error: ajaxErrorHandler
    });
});

Los he observado en Fiddler, y la diferencia entre trabajar (Chrome) y no trabajar (Firefox) es que el HTTP PUT se activa en Chrome y no se dispara en Firefox.

Ahora, sé que jQuery.ajax PUT no está garantizado en todos los navegadores.

he leído

¿Los métodos PUT, DELETE, HEAD, etc. están disponibles en la mayoría de los navegadores web?http://annevankesteren.nl/2007/10/http-method-support

Estos sitios reafirman que PUT puede no funcionar en todos los navegadores, pero debería funcionar en FF.

Finalmente, golpeé lo siguiente con FF21 y PUT funciona.

http://www.mnot.net/javascript/xmlhttprequest/

Ciertamente podría trabajar en esto, pero me parece que esto debería funcionar. Preferiría no jerry-rig algo, pero hacer que .Qax jQuery funcione correctamente.

Otros detalles: * versión jQuery 2.0.0 * El backend es Spring3

[Editar para agregar el HTML]

Respuestas a la pregunta(4)

Su respuesta a la pregunta