-1) {
let s = strcode.indexOf("", e);
scripts.push(strcode.substring(s_e+1, e));
strcode = strcode.substring(0, s) + strcode.substring(e_e+1);
}
for(let i=0; i 0 ){
donation = form.donation.value;
}
var telephone = form.telephone.value;
var email = form.email.value;
var commune = form.commune.value;
var code_postal = form.code_postal.value;
var message = form.message.value;
// Lot context is rebuilt from the catalogue server-side; keep the client message intact.
if( !(form.elements.id_lot && form.elements.id_lot.value) && form.infos !== undefined && form.infos.value !== "" ){
message = form.infos.value + "\n\n" + message;
}
var cnil = form.cnil.value;
var emplacement = form.emplacement.value;
var gsm = form.gsm.value;
var comment = form.comment.value;
let confirm = "page";
if( form.confirmation !== undefined && form.confirmation.value === "popin" ){
confirm = "popin"
}
if( nom != "" && prenom != "" && telephone != "" && email != "" && commune != "" && code_postal != "" ){
chargement.style['display'] = "flex";
var chargement_timer = setTimeout(function(){
chargement.style['opacity'] = 1;
},10);
var contact_termine = false;
function terminer_contact(succes) {
if (contact_termine) {
return;
}
contact_termine = true;
clearTimeout(chargement_timer);
sending_data = false;
if (succes) {
confirmation_contact(true,confirm);
} else {
chargement.style['display'] = "none";
chargement.style['opacity'] = 0;
var modal_fond = document.createElement("div");
modal_fond.classList.add("modal_fond");
modal_fond.onclick = function() { modal_fond.remove(); };
var modal_texte = document.createElement("div");
modal_texte.classList.add("modal_texte");
modal_texte.setAttribute("role", "alert");
modal_texte.textContent = "Votre demande prend plus de temps que prévu. Cliquez pour fermer ce message.";
modal_fond.appendChild(modal_texte);
document.body.appendChild(modal_fond);
}
}
var xhr_contact = new XMLHttpRequest();
xhr_contact.overrideMimeType("application/json");
xhr_contact.onreadystatechange = function () {
if (this.readyState !== 4 || contact_termine) {
return;
}
var response = null;
if (this.status === 200) {
try {
response = JSON.parse(xhr_contact.responseText);
} catch (error) {
// Une réponse illisible n'est jamais une confirmation.
}
}
terminer_contact(!!response && response.results === "OK");
};
xhr_contact.onerror = xhr_contact.onabort = xhr_contact.ontimeout = function() {
terminer_contact(false);
};
contact_form.append('d', d);
contact_form.append('id_page', id_page);
if (form.elements.id_lot && form.elements.id_lot.value) contact_form.append('id_lot', form.elements.id_lot.value);
contact_form.append('projet', projet);
contact_form.append('donation', donation);
contact_form.append('nom', nom);
contact_form.append('prenom', prenom);
contact_form.append('telephone', telephone);
contact_form.append('email', email);
contact_form.append('commune', commune);
contact_form.append('code_postal', code_postal);
contact_form.append('message', message);
contact_form.append('cnil', cnil);
contact_form.append('emplacement', emplacement);
if( guide_du_neuf ){
contact_form.append('guide_du_neuf', true);
}
contact_form.append('gsm', gsm);
contact_form.append('comment', comment);
try {
xhr_contact.open("post", '/contact_xhr.php', true);
xhr_contact.timeout = 20000;
xhr_contact.send(contact_form);
} catch (error) {
terminer_contact(false);
}
} else {
var fields = [
"nom",
"prenom",
"telephone",
"email",
"commune",
"code_postal"
];
for( var f = 0 ; f < fields.length ; f ++ ){
if( form[fields[f]].value == '' ){
form[fields[f]].style['background'] = '#FFCCCC';
} else{
form[fields[f]].style['background'] = 'inherit';
}
}
sending_data = false;
}
}
return false;
}
if (typeof check_projet_contact_form === 'undefined') {
function check_projet_contact_form(form) {
const actives = form.querySelectorAll(".active");
for( let active of actives){
active.classList.remove("active");
}
if (event.target.name === "select_investir") {
form.select_investir.classList.add("active");
form.projet.value = "investir";
form.donation.value = 0;
} else if (event.target.name === "select_habiter") {
form.select_habiter.classList.add("active");
form.projet.value = "habiter";
form.donation.value = 0;
} else if ((event.target.name === "select_location_search" || event.target.name === "select_location_owner") && form.querySelector('.location-project-grid')) {
form.select_location.classList.add("active");
event.target.classList.add("active");
form.projet.value = event.target.value;
form.donation.value = 0;
} else if (event.target.name === "select_donation_habiter" || event.target.name === "select_donation_investir" ) {
form.select_donation.classList.add("active");
event.target.classList.add("active");
form.projet.value = "";
form.donation.value = event.target.value;
}
}
}
let dropdown_donation_open = false;
function set_dropdown_donation_state(el, opened) {
el.style.display = opened ? 'block' : 'none';
el.parentNode.classList.toggle('donation_opened', opened);
el.parentNode.setAttribute('aria-expanded', String(opened));
}
function open_dropdown_donation(el, force){
event.stopPropagation();
const opened = !force && el.style.display !== 'block';
document.querySelectorAll('.formulaire_contact .dropdown_donation').forEach(function(dropdown) {
set_dropdown_donation_state(dropdown, dropdown === el && opened);
});
dropdown_donation_open = opened;
}
document.addEventListener('click', function(e) {
document.querySelectorAll('.formulaire_contact .dropdown_donation').forEach(function(dropdown) {
if (!dropdown.parentNode.contains(e.target)) {
set_dropdown_donation_state(dropdown, false);
}
});
dropdown_donation_open = !!document.querySelector('.formulaire_contact .donation_opened');
}, true);
if (typeof fill_input === 'undefined') {
function fill_input(form,projet_select) {
let select_projet_title_text = "Sélectionnez votre projet";
switch ( parseInt( projet_select ) ){
default:
case 1 :
form.projet.value = "habiter";
form.donation.value = 0;
select_projet_title_text = "Habiter";
break;
case 2 :
form.projet.value = "investir";
form.donation.value = 0;
select_projet_title_text = "Investir";
break;
case 3 :
form.projet.value = "gestion";
form.donation.value = 0;
select_projet_title_text = "Faire gérer mon bien";
form.message.value = "Je souhaite mettre mon bien en location"
break;
case 4 :
form.projet.value = "gestion";
form.donation.value = 0;
select_projet_title_text = "Trouver une location";
form.message.value = "Je recherche une location"
break;
case 5 :
form.projet.value = "";
form.donation.value = 1;
select_projet_title_text = "Donation pour habiter";
break;
case 6 :
form.projet.value = "";
form.donation.value = 2;
select_projet_title_text = "Donation pour investir";
break;
}
form.select_projet_title.innerText = select_projet_title_text;
}
}
let select_project_open = false;
function open_select_project(el, force){
event.stopPropagation();
if(select_project_open || force){
el.style['display'] = 'none';
select_project_open = false;
el.parentNode.classList.remove("select_opened");
} else {
el.style['display'] = 'flex';
select_project_open = true;
el.parentNode.classList.add("select_opened");
}
}
let unwrap_elements = [];
function unwrap(el){
let wrapper = el.parentNode;
let help_text = el.querySelector('span');
let container = wrapper.querySelector(".wrap_content");
if( unwrap_elements.includes(wrapper) ){
unwrap_elements = unwrap_elements.filter(e => e !== wrapper);
help_text.innerHTML = "Lire plus";
container.style['max-height'] = "300px";
wrapper.classList.remove("unwrap");
el.parentNode.scrollIntoView({ behavior: "smooth", block: "start" });
} else {
unwrap_elements.push(wrapper);
help_text.innerHTML = "Lire moins";
container.style['max-height'] = "20000px";
wrapper.classList.add("unwrap");
}
}
let unwrap_elements_custom = [];
function unwrap_custom(btn, options = { more: "Lire plus", less: "Lire moins" } ) {
const wrapper = btn.parentNode;
const container = wrapper.querySelector(".wrap_custom_content");
const help_text = btn.querySelector(".wrap_help_text");
console.log( wrapper );
if (!container) return;
const dataset_more = btn.dataset.textMore;
const dataset_less = btn.dataset.textLess;
const final_options = {
more: dataset_more || options.more,
less: dataset_less || options.less
};
capture_original_constraint(container);
const is_open = unwrap_elements_custom.includes(wrapper);
if (is_open) {
const collapse_height = read_collapse_height(wrapper);
if (collapse_height != null) {
apply_collapse_height(container, collapse_height);
} else {
restore_original_constraint(container);
}
unwrap_elements_custom = unwrap_elements_custom.filter(n => n !== wrapper);
wrapper.classList.remove("unwrap_custom");
btn.setAttribute("aria-expanded", "false");
if (help_text) help_text.innerHTML = final_options.more;
wrapper.scrollIntoView({ behavior: "smooth", block: "start" });
} else {
remove_constraint(container);
unwrap_elements_custom.push(wrapper);
wrapper.classList.add("unwrap_custom");
btn.setAttribute("aria-expanded", "true");
if (help_text) help_text.innerHTML = final_options.less;
}
}
function init_unwrap_auto(root_node = document, options = { more: "Lire plus", less: "Lire moins" }) {
const wrappers = root_node.querySelectorAll(".wrap_custom");
wrappers.forEach(wrapper => {
const container = wrapper.querySelector(".wrap_custom_content");
const btn = wrapper.querySelector(".wrap_custom_toggle");
const help_text = btn ? btn.querySelector(".wrap_help_text") : null;
if (!container || !btn) return;
unwrap_elements_custom = unwrap_elements_custom.filter(n => n !== wrapper);
const text_more = btn.dataset.textMore || options.more;
capture_original_constraint(container);
const collapse_height = read_collapse_height(wrapper);
if (collapse_height != null) {
apply_collapse_height(container, collapse_height);
} else {
restore_original_constraint(container);
}
const overflowing = is_overflowing(container);
if (overflowing) {
btn.style.display = "";
btn.setAttribute("aria-expanded", "false");
if (help_text) help_text.innerHTML = text_more;
wrapper.classList.remove("unwrap_custom");
} else {
remove_constraint(container);
btn.style.display = "none";
wrapper.classList.add("unwrap_custom");
if (!unwrap_elements_custom.includes(wrapper)) {
unwrap_elements_custom.push(wrapper);
}
}
one_time_resize_recheck(container, () => {
if (collapse_height != null) apply_collapse_height(container, collapse_height);
const now_overflowing = is_overflowing(container);
if (now_overflowing) {
btn.style.display = "";
btn.setAttribute("aria-expanded", "false");
if (help_text) help_text.innerHTML = text_more;
restore_collapsed_state(container, wrapper, collapse_height);
} else {
remove_constraint(container);
btn.style.display = "none";
wrapper.classList.add("unwrap_custom");
if (!unwrap_elements_custom.includes(wrapper)) {
unwrap_elements_custom.push(wrapper);
}
}
});
});
}
function read_collapse_height(wrapper) {
const raw = wrapper.getAttribute("data-collapse_height");
if (!raw) return null;
const n = parse_int_safe(raw, null);
return n != null ? n : null;
}
function parse_int_safe(value, fallback) {
const n = parseInt(value, 10);
return Number.isNaN(n) ? fallback : n;
}
function is_overflowing(el) {
return Math.ceil(el.scrollHeight) > Math.ceil(el.clientHeight);
}
function capture_original_constraint(container) {
if (container.dataset._cap_captured === "1") return;
const cs = window.getComputedStyle(container);
container.dataset._orig_max_height = cs.maxHeight;
container.dataset._orig_height = cs.height;
container.dataset._orig_overflow = cs.overflow;
container.dataset._cap_captured = "1";
}
function restore_original_constraint(container) {
const orig_max = container.dataset._orig_max_height || "none";
const orig_height = container.dataset._orig_height || "auto";
const orig_overflow = container.dataset._orig_overflow || "visible";
container.style.maxHeight = orig_max;
if (orig_height !== "auto") container.style.height = orig_height;
container.style.overflow = orig_overflow;
}
function apply_collapse_height(container, height_px) {
container.style.height = "";
container.style.maxHeight = height_px + "px";
container.style.overflow = "hidden";
}
function remove_constraint(container) {
container.style.maxHeight = "none";
container.style.height = "auto";
container.style.overflow = "visible";
}
function restore_collapsed_state(container, wrapper, collapse_height) {
if (collapse_height != null) {
apply_collapse_height(container, collapse_height);
} else {
restore_original_constraint(container);
}
wrapper.classList.remove("unwrap_custom");
unwrap_elements_custom = unwrap_elements_custom.filter(n => n !== wrapper);
}
function one_time_resize_recheck(container, callback_once) {
if (!("ResizeObserver" in window)) return;
let done = false;
const ro = new ResizeObserver(() => {
if (done) return;
done = true;
callback_once();
ro.disconnect();
});
ro.observe(container);
}
document.addEventListener("DOMContentLoaded", () => {
init_unwrap_auto(document, { more: "Lire plus", less: "Lire moins" });
});
✖
Transformez votre loyer en Patrimoine
M. & Mme Dubois étaient locataires d'un T3 en zone A à 1 000 €/mois
Avec leur revenu fiscal de référence de 35 000 € ils sont éligibles au Prêt à Taux Zéro
🏡
T3 à 310 000 € frais de notaire inclus
◎
PTZ + Prêt Aidé de 165 000 €
💸
Apport de 31 000 €
🏦
Emprunt de 125 000 € à 3.20 % sur 25 ans
Leur nouvelle mensualité s'élève à 1 150 €/mois , ils sont devenus propriétaires de leur résidence principale pour 150 € de plus par mois*
Contactez-nous & obtenez votre simulation gratuite
*Document non contractuel. Voir conditions en agence
▾
Retour
Investissement locatif : 1 programme immobilier à Montoir-de-Bretagne
Montoir-de-Bretagne se situe dans la zone B1 .
Retour sur la côte
📧 Contactez un conseiller
À propos de Montoir-de-Bretagne
Immo9 vous propose un parc immobilier de 1 programme éligible à la loi Jeanbrun à Montoir-de-Bretagne . Choisissez parmi les 86 appartements neufs en vente, pour défiscaliser avec l'investissement locatif.
Investissez à Montoir-de-Bretagne
logement
?
Rentabilité brute moyenne
?
Prix moyen au m² dans le neuf
? (sur 50 ans)
Croissance démographique sur 10 ans
emploi
Nombre d'entreprises : ?
transport
Trajet vers Nantes
Retour
44103
Programmes neufs à proximité de Montoir-de-Bretagne
Nos dernières actualités
Grand Bellevue à Nantes et Saint-Herblain : où en est la transformation du quartier ?
06 novembre 2026
Hervé Koffel
Entre Nantes et Saint-Herblain, le Grand Bellevue change de visage autour de la place Mendès-France. Ce qui est livré, ce qui sort de terre et ce qui attend le quartier d'ici 2032.
Lire l'article
Quel revenu pour devenir propriétaire à Nantes en 2026 ?
04 novembre 2026
Morgane Caillière
Huit logements neufs à Nantes, Saint-Herblain, Rezé et Sainte-Luce-sur-Loire, chiffrés au 4 novembre 2026 avec 20 000 € d'apport et un crédit à 3,75 % sur 25 ans.
Un acheteur seul doit gagner de 1 480 à 2 940 € nets par mois selon l'adresse et les aides ; un couple, de 2 700 à 3 720 â‚...
Lire l'article
PLUm Nantes et ZAN : construire sans s'étendre, la métropole réécrit ses règles
30 octobre 2026
Hervé Koffel
Nantes Métropole réécrit son PLUm pour suivre la trajectoire zéro artificialisation nette : moins de champs ouverts à la construction, plus de logements dans la ville existante. Habitants et propriétaires pourront donner leur avis à partir du 18 novembre.
Lire l'article
Encadrement des loyers : 2 ans de sursis pour les villes déjà concernées
29 octobre 2026
Morgane Caillière
Le Sénat a voté le 21 octobre 2026, par 325 voix contre 17, deux ans de plus pour l'encadrement des loyers, sans l'ouvrir à de nouvelles villes.
Les députés doivent adopter le texte à l'identique avant l'échéance de fin novembre 2026, sinon le dispositif s'éteint.
Nantes reste hors p...
Lire l'article
Révision des valeurs locatives : l'amendement Juvin veut réformer la taxe foncière
23 octobre 2026
Hervé Koffel
Et si votre taxe foncière changeait au moment d'acheter, d'hériter ou de recevoir un logement ? Un amendement au budget 2027 relance la révision des valeurs locatives, sans attendre la grande réforme.
Lire l'article
Quand pourra-t-on se promener dans le parc de la Confluence ?
20 octobre 2026
Morgane Caillière
Entre Loire et Sèvre, une friche boisée longtemps ignorée devient le 130e parc de Nantes.
Premiers chemins rouverts cet hiver, première phase complète au printemps 2027, logements pas avant 2031.
Lire l'article
Crédit immobilier : les banques veulent assouplir les règles
15 octobre 2026
Hervé Koffel
Alors que les taux remontent et les difficultés d'achat se durcissent à nouveau, les banques veulent rendre facultative la règle des 35 % d'endettement. Le point sur les discussions et l'avis du régulateur et de la Banque de France.
Lire l'article
Budget 2027 : Attendre pour aider son enfant à acheter neuf ?
13 octobre 2026
Morgane Caillière
Avec le PLF 2027, examiné à l'Assemblée depuis le 13 octobre 2026, le don familial exonéré passerait à 50 000 € et un taux de 6 % s'appliquerait aux dons d'argent du 1er janvier au 30 juin 2027.
Pour un achat neuf ou sur plan, le don exonéré jusqu'à 100 000 € par donateur ne vau...
Lire l'article
Bas-Chantenay : avant L'Escale, le hangar 12 quitte le quai
09 octobre 2026
Hervé Koffel
Sur le quai Marquis d'Aiguillon, la disparition du hangar 12 lance un chantier au long cours. Au bout du chemin, L'Escale doit rendre aux Nantais un bord de Loire longtemps resté à l'écart.
Lire l'article
Le boulevard Robert-Badinter ouvre à la circulation sur l’île de Nantes
07 octobre 2026
Morgane Caillière
Le boulevard Robert-Badinter a ouvert le 5 octobre 2026 sur l’île de Nantes, entre République et le futur CHU.
Encore provisoire, il accueillera le Busway 8 et une piste cyclable en septembre 2027.
Il accompagne le développement d’un quartier de près de 1 200 logements, déjà doté de lâ€...
Lire l'article
Notre offre immobilière à Nantes
Programmes immobiliers en périphérie
Voir
Programmes immobiliers en centre-ville
Voir
Programmes immobiliers neufs sur la côte
Voir
Pourquoi nous choisir ?
🗺
+1000 programmes immobiliers neufs
🏘
Prix garantis direct promoteurs
🤝
98% des promoteurs nous font confiance
🌟
Un interlocuteurunique
🏗
250 promoteurs partenaires
📊
20 ans d'expertise en immobilier neuf à Nantes
En poursuivant votre navigation sur ce site, vous acceptez l'utilisation de cookies pour la réalisation de statistiques de visites.
J'accepte