www.trenes.com
Open in
urlscan Pro
5.135.4.180
Public Scan
Submitted URL: https://newsletter.trenes.com/c/qgz7xq9/fjsrbnkh/o_ukoga9gq4
Effective URL: https://www.trenes.com/?sc=24/
Submission: On January 16 via api from ES — Scanned from ES
Effective URL: https://www.trenes.com/?sc=24/
Submission: On January 16 via api from ES — Scanned from ES
Form analysis
5 forms found in the DOMhttps://www.trenes.com/resultados/index.php
<form action="https://www.trenes.com/resultados/index.php" target="_blank" id="buscadorTrenesCom">
</form>
<form x-data="ticketSearch" class="travelform" id="travelform" autocomplete="off">
<input type="hidden" id="sesiondb" value="765a65d3ae0b54">
<input type="hidden" name="lang" id="lang" value="">
<button type="submit" disabled="" style="display: none" aria-hidden="true"></button>
<div class="travelform__row travelform__row--full">
<div class="travelform__col travelform__col--full">
<div x-data="locationInput" class="locations-input" @click.outside="openi = false">
<input x-ref="input" x-model="inputs.departure" @click="openModal();" @input="getLocations" class="form__input form__input--origin2" type="text" id="inputorigin" name="origin" placeholder="Elige origen" onclick="this.select();">
<div id="hero-origin-menu" class="locations-wrapper locations-wrapper-ida" hidden="" x-bind:class="{ 'active': openi }">
<header class="locations-mobile__header">
<button class="closelocation" type="button" @click="closeModal();openi = false; bodyOverflow = false">
<img src="/webVersions/v21/images/icons/icon-arrow-left-blue.svg" width="32px" height="32px" alt="">
</button>
<input x-model="inputs.departure" @input="getLocations" type="text" placeholder="Elige origen" x-trap="openi" id="inputoriginm">
</header>
<template x-if="locationsida.length>0">
<div class="list-wrapper">
<ul>
<template x-for="location in locationsida">
<div>
<template x-if="location.code>0">
<li class="item item--location" @click="select(location)">
<svg class="item--location__icon" viewBox="0 0 24 24" width="24" height="24" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<defs>
<path d="M12 13a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-8-3a8 8 0 1 1 16 0c0 1.842-1.176 4.053-3.53 6.635L12 22l-4.47-5.365C5.175 14.053 4 11.842 4 10z" id="Pin__a"></path>
</defs>
<use fill="currentColor" xlink:href="#Pin__a" fill-rule="evenodd"></use>
</svg>
<div class="item--names">
<span x-text="location.city"></span>
<span x-text="location.country"></span>
</div>
</li>
</template>
<template x-if="location.code>0">
<template x-for="station in location.stations">
<li class="item item--train-station" @click="select(station)">
<template x-if="station.type=='tren'">
<img src="/webVersions/v21/images/icons/icon-tren2.svg" width="18px" height="18px" alt="">
</template>
<template x-if="station.type=='bus'">
<img src="/webVersions/v21/images/icons/icon-bus.svg" width="18px" height="18px" alt="">
</template>
<div class="item--names">
<span x-text="station.name"></span>
<span x-text="station.country"></span>
</div>
</li>
</template>
</template>
<template x-if="location.code==0">
<template x-for="station in location.stations">
<li class="item item--train-location" @click="select(station)">
<template x-if="station.type=='tren'">
<img src="/webVersions/v21/images/icons/icon-tren2.svg" width="18px" height="18px" alt="">
</template>
<template x-if="station.type=='bus'">
<img src="/webVersions/v21/images/icons/icon-bus.svg" width="18px" height="18px" alt="">
</template>
<div class="item--names">
<span x-text="station.name"></span>
<span x-text="station.country"></span>
</div>
</li>
</template>
</template>
</div>
</template>
</ul>
</div>
</template>
<template x-if="locationsida.length==0">
<div class="list-wrapper">
<ul>
<template x-if="locationstusBusquedas.length>0">
<div>
<div class="item item--title">Tus búsquedas más recientes</div>
<template x-for="location in locationstusBusquedas">
<li class="item item--location" @click="select(location,1)">
<img src="/webVersions/v21/images/icons/icon-tren2.svg" width="18px" height="18px" alt="">
<div class="item--names">
<span x-text="location.name"></span>
<span x-text="location.country"></span>
</div>
</li>
</template>
</div>
</template>
<template x-if="locationsMasBuscados.length>0">
<div>
<div class="item item--title">Más buscados</div>
<template x-for="location in locationsMasBuscados">
<li class="item item--location" @click="select(location,1)">
<img src="/webVersions/v21/images/icons/icon-tren2.svg" width="18px" height="18px" alt="">
<div class="item--names">
<span x-text="location.name"></span>
<span x-text="location.country"></span>
</div>
</li>
</template>
</div>
</template>
</ul>
</div>
</template>
</div>
</div>
<button @click="swapLocationInputs" type="button" class="changer"></button>
<div x-data="locationInput" class="locations-input" @click.outside="openv = false">
<input id="boxreturn" x-ref="input" x-model="inputs.destination" @click="openModal();" @input="getLocations" class="form__input form__input--pointer2" type="text" name="destination" placeholder="Elige destino" onclick="this.select();">
<div id="hero-destination-menu" class="locations-wrapper locations-wrapper-vuelta" hidden="" x-bind:class="{ 'active': openv==1 }">
<header class="locations-mobile__header">
<button type="button" class="closelocation" @click="closeModal();openv = false; bodyOverflow = false">
<img src="/webVersions/v21/images/icons/icon-arrow-left-blue.svg" width="32px" height="32px" alt="">
</button>
<input id="boxreturnm" x-model="inputs.destination" @input="getLocations" type="text" placeholder="Elige destino" x-trap="openv">
</header>
<template x-if="locationsvuelta.length>0">
<div class="list-wrapper">
<ul>
<template x-for="location in locationsvuelta">
<div>
<template x-if="location.code>0">
<li class="item item--location" @click="select(location)">
<svg class="item--location__icon" viewBox="0 0 24 24" width="24" height="24" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<defs>
<path d="M12 13a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-8-3a8 8 0 1 1 16 0c0 1.842-1.176 4.053-3.53 6.635L12 22l-4.47-5.365C5.175 14.053 4 11.842 4 10z" id="Pin__a"></path>
</defs>
<use fill="currentColor" xlink:href="#Pin__a" fill-rule="evenodd"></use>
</svg>
<div class="item--names">
<span x-text="location.city"></span>
<span x-text="location.country"></span>
</div>
</li>
</template>
<template x-if="location.code>0">
<template x-for="station in location.stations">
<li class="item item--train-station" @click="select(station)">
<template x-if="station.type=='tren'">
<img src="/webVersions/v21/images/icons/icon-tren2.svg" width="18px" height="18px" alt="">
</template>
<template x-if="station.type=='bus'">
<img src="/webVersions/v21/images/icons/icon-bus.svg" width="18px" height="18px" alt="">
</template>
<div class="item--names">
<span x-text="station.name"></span>
<span x-text="station.country"></span>
</div>
</li>
</template>
</template>
<template x-if="location.code==0">
<template x-for="station in location.stations">
<li class="item item--train-location" @click="select(station)">
<template x-if="station.type=='tren'">
<img src="/webVersions/v21/images/icons/icon-tren2.svg" width="18px" height="18px" alt="">
</template>
<template x-if="station.type=='bus'">
<img src="/webVersions/v21/images/icons/icon-bus.svg" width="18px" height="18px" alt="">
</template>
<div class="item--names">
<span x-text="station.name"></span>
<span x-text="station.country"></span>
</div>
</li>
</template>
</template>
</div>
</template>
</ul>
</div>
</template>
<template x-if="locationsvuelta.length==0">
<div class="list-wrapper">
<ul>
<template x-if="locationstusBusquedasV.length>0">
<div>
<div class="item item--title">Tus búsquedas más recientes</div>
<template x-for="location in locationstusBusquedasV">
<li class="item item--location" @click="select(location,1)">
<img src="/webVersions/v21/images/icons/icon-tren2.svg" width="18px" height="18px" alt="">
<div class="item--names">
<span x-text="location.name"></span>
<span x-text="location.country"></span>
</div>
</li>
</template>
</div>
</template>
<template x-if="locationsMasBuscadosV.length>0">
<div>
<div class="item item--title">Más buscados</div>
<template x-for="location in locationsMasBuscadosV">
<li class="item item--location" @click="select(location,1)">
<img src="/webVersions/v21/images/icons/icon-tren2.svg" width="18px" height="18px" alt="">
<div class="item--names">
<span x-text="location.name"></span>
<span x-text="location.country"></span>
</div>
</li>
</template>
</div>
</template>
</ul>
</div>
</template>
</div>
</div>
</div>
</div>
<div class="travelform__row">
<div class="travelform__col travelform__col--full">
<input class="form__input form__input--calendar form__input--left" id="date-departure" name="departure" placeholder="Fecha de ida" autocomplete="off" readonly="">
<div class="return-date-wrapper">
<input class="form__input form__input--calendar form__input--right" id="date-return" name="return" placeholder="Añadir vuelta" autocomplete="off" readonly="">
<svg style="display: none;" x-show="datePicker.endDate!=null" @click="routePicker.type = 'ida'" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<defs>
<path d="M13.192 11.778l5.657 5.657a1 1 0 0 1-1.414 1.414l-5.657-5.657-5.657 5.657a1 1 0 1 1-1.414-1.414l5.657-5.657-5.657-5.657a1 1 0 0 1 1.414-1.414l5.657 5.657 5.657-5.657a1 1 0 0 1 1.414 1.414l-5.657 5.657z" id="clear"></path>
</defs>
<use fill="currentColor" xlink:href="#clear" fill-rule="evenodd"></use>
</svg>
</div>
</div>
<div class="travelform__col travelform__col--md">
<div class="pass-wrapper" id="heropassengers" @click.outside="passengers.open = false">
<!-- Modal -->
<div style="display: none;" class="passengers-modal" role="dialog" aria-labelledby="modal" aria-modal="true" tabindex="0" x-show="passengers.openModal" @click.away="passengers.openModal = false;">
<div class="passengers-modal__backdrop" aria-hidden="true" x-show="passengers.openModal" x-transition.opacity=""></div>
<div x-show="passengers.openModal" x-transition="" @click.outside="controlCards();" class="passengers-modal__content">
<div class="modal modal--disc">
<div class="modal__header">
<p>Tarjetas de descuento</p>
<svg @click="controlCards();" xmlns="http://www.w3.org/2000/svg" version="1" viewBox="0 0 24 24">
<path d="M13 12l5-5-1-1-5 5-5-5-1 1 5 5-5 5 1 1 5-5 5 5 1-1z"></path>
</svg>
</div>
<div class="modal__content">
<div class="m-list">
<template x-for="item in passengers.discountCards">
<div>
<div class="item-list item-list--tit">
<div class="item-list__col" x-text="item.company"><button type="button" class="bt-info"></button></div>
<div class="item-list__col"><img :src="item.img" :alt="item.company" width="42" height="16" loading="lazy"></div>
</div>
<template x-for="card in item.cards">
<label class="item-list">
<div class="item-list__col" x-text="card.name"></div>
<input x-model="passengers.numCards[card.id]" placeholder="Número de tarjeta" style="width:15rem" x-show="card.preRequerida==1" class="requiredCard item-list--input" type="text" :id="'discountNumber-'+card.id"
x-bind:name="'discountNumber-'+card.id" value="">
<div class="item-list__col">
<div class="checkbox checkbox--check-bind">
<input type="checkbox " @click="selectCard(card)" x-bind:checked="passengers.selectedCards.has(card.id)"
x-bind:disabled="(item.company=='DeutscheBahn' && passengers.currentPassenger.cardSelected && !passengers.selectedCards.has(card.id))?true:false">
<span></span>
<p></p>
</div>
</div>
</label></template>
</div>
</template>
</div>
</div>
<div class="modal__btns">
<button type="button" @click="clearSelection();closeModalCard();" class="bt bt-clear">Eliminar</button>
<button type="button" @click="controlCards(1);" class="bt bt--blue">Confirmar</button>
</div>
</div>
</div>
</div>
<input @click="openModal();passengers.open = ! passengers.open" type="button" class="form__input form__input--passenger" id="passengers" x-model="passengers.passengersLabel" data-toggles="pass-tg">
<div id="pass-tg" class="pass-tg" x-bind:class="{ 'active': passengers.open }">
<div class="pass-tg__panel" x-cloak="">
<div class="panel-header">
<button type="button" class="gutter" @click="closeModal();passengers.open = false; bodyOverflow = false">
<img src="/webVersions/v21/images/icons/icon-arrow-left-blue.svg" width="32px" height="32px" alt="">
</button>
<div class="panel-header__title">Pasajeros</div>
<div class="gutter"></div>
</div>
<div class="pass-tg__item" :id="$id('passengers-type')">
<div class="item-head">
<div class="item-head__intro">
<div>Adultos<br><span x-text="passengers.adultage+ ' años'">26 - 59 años</span></div>
<div class="qty">
<div class="qty_inc_dec">
<button type="button" class="bt-qty bt-qty--dc decrement" @click="decreasePassengers('adult')" :id="$id('passengers-decrease')"></button>
<input type="text" name="qty" :value="passengers.passengersList.filter(p => p.type == 'adult').length" class="qty-in">
<button type="button" class="bt-qty bt-qty--in increment" @click="increasePassengers('adult')" :id="$id('passengers-increase')"></button>
</div>
</div>
</div>
<ul class="saved-passengers">
<template x-for="passenger in passengers.savePassengers.filter(p => p.type == 'adult')">
<li class="saved-passengers__item">
<label class="checkbox-wrapper">
<div class="checkbox checkbox--regular">
<input x-bind:checked="passengers.selectedSavePassengers.has(passenger.id)" type="checkbox" @click="increaseSavePassengers('adult',passenger.id,passenger.savedCards,this,passenger.discountNums)">
<span></span>
</div>
<span x-text="passenger.name+' '+passenger.surname"></span>
</label>
</li>
</template>
</ul>
</div>
<template x-if="passengers.discountCardActive">
<div class="item-body">
<template x-for="(adult, index) in passengers.passengersList.filter(p => p.type == 'adult')">
<div class="pass-entry">
<div class="pass-entry__head">
<span x-text="`Adulto ${index + 1}`"></span>
<i x-show="passengers.discountCardActive" class="pass-entry__icon" @click="openModalCard();selectPassengerCards(adult)"></i>
</div>
<ul class="pass-entry__list" x-show="passengers.discountCardActive">
<template x-for="card in Array.from(adult.discountCards)">
<li x-text="passengers.namecars[card]"></li>
</template>
</ul>
</div>
</template>
</div>
</template>
</div>
<template x-if="passengers.youngs==1">
<div class="pass-tg__item" :id="$id('passengers-type')">
<div class="item-head">
<div class="item-head__intro">
<div>Joven<br><span x-text="passengers.youngage+ ' años'">14 - 25 años</span></div>
<div class="qty">
<div class="qty_inc_dec">
<button type="button" class="bt-qty bt-qty--dc decrement" @click="decreasePassengers('young')" :id="$id('passengers-decrease')"></button>
<input type="text" name="qty" :value="passengers.passengersList.filter(p => p.type == 'young').length" class="qty-in">
<button type="button" class="bt-qty bt-qty--in increment" @click="increasePassengers('young')" :id="$id('passengers-increase')"></button>
</div>
</div>
</div>
<ul class="saved-passengers">
<template x-for="passenger in passengers.savePassengers.filter(p => p.type == 'young')">
<li class="saved-passengers__item">
<label class="checkbox-wrapper">
<div class="checkbox checkbox--regular">
<input x-bind:checked="passengers.selectedSavePassengers.has(passenger.id)" type="checkbox" @click="increaseSavePassengers('young',passenger.id,passenger.savedCards,this,passenger.discountNums)">
<span></span>
</div>
<span x-text="passenger.name+' '+passenger.surname"></span>
</label>
</li>
</template>
</ul>
</div>
<template x-if="mostraredadjoven==1">
<div class="item-body" :id="$id('passengers-type')">
<template x-for="(young, index) in passengers.passengersList.filter(p => p.type == 'young')">
<div class="pass-entry">
<div class="pass-entry__head">
<span x-text="`Joven ${index + 1}`"></span>
<select x-show="mostraredadjoven==1" name="" id="" x-model="young.age">
<option disabled="" selected="" value="">Edad</option>
<option value="14">14 años</option>
<option value="15">15 años</option>
<option value="16">16 años</option>
<option value="17">17 años</option>
<option value="18">18 años</option>
<option value="19">19 años</option>
<option value="20">20 años</option>
<option value="21">21 años</option>
<option value="22">22 años</option>
<option value="23">23 años</option>
<option value="24">24 años</option>
<option value="25">25 años</option>
</select>
<i x-show="passengers.discountCardActive" class="pass-entry__icon" @click="openModalCard();selectPassengerCards(young)"></i>
</div>
<ul class="pass-entry__list" x-show="passengers.discountCardActive">
<template x-for="card in Array.from(young.discountCards)">
<li x-text="passengers.namecars[card]"></li>
</template>
</ul>
</div>
</template>
</div>
</template>
</div>
</template>
<template x-if="passengers.kid==1">
<div class="pass-tg__item" :id="$id('passengers-type')">
<div class="item-head">
<div class="item-head__intro">
<div>Niños<br><span x-text="passengers.kidage+ ' años'">0 - 13 años</span></div>
<div class="qty">
<div class="qty_inc_dec">
<button type="button" class="bt-qty bt-qty--dc decrement" @click="decreasePassengers('kid')" :id="$id('passengers-decrease')"></button>
<input type="text" name="qty" :value="passengers.passengersList.filter(p => p.type == 'kid').length" class="qty-in">
<button type="button" class="bt-qty bt-qty--in increment" @click="increasePassengers('kid')" :id="$id('passengers-increase')"></button>
</div>
</div>
</div>
<ul class="saved-passengers">
<template x-for="passenger in passengers.savePassengers.filter(p => p.type == 'kid')">
<li class="saved-passengers__item">
<label class="checkbox-wrapper">
<div class="checkbox checkbox--regular">
<input x-bind:checked="passengers.selectedSavePassengers.has(passenger.id)" type="checkbox" @click="increaseSavePassengers('kid',passenger.id,passenger.savedCards,this,passenger.discountNums)">
<span></span>
</div>
<span x-text="passenger.name+' '+passenger.surname"></span>
</label>
</li>
</template>
</ul>
</div>
<template x-if="passengers.discountCardActive || mostraredadninos==1">
<div class="item-body" :id="$id('passengers-type')">
<template x-for="(kid, index) in passengers.passengersList.filter(p => p.type == 'kid')">
<div class="pass-entry">
<div class="pass-entry__head">
<span x-text="`Niño ${index + 1}`"></span>
<select x-show="mostraredadninos==1" name="" id="" x-model="kid.age">
<option disabled="" selected="" value="">Edad</option>
<template x-for="(year, index) in passengers.kidYears" :key="index">
<option :value="year" x-text="year+ ' años'"></option>
</template>
</select>
<i x-show="passengers.discountCardActive" class="pass-entry__icon" @click="openModalCard();selectPassengerCards(kid)"></i>
</div>
<ul class="pass-entry__list" x-show="passengers.discountCardActive">
<template x-for="card in Array.from(kid.discountCards)">
<li x-text="passengers.namecars[card]"></li>
</template>
</ul>
</div>
</template>
</div>
</template>
</div>
</template>
<template x-if="passengers.tolder==1">
<div class="pass-tg__item" :id="$id('passengers-type')">
<div class="item-head">
<div class="item-head__intro">
<div>Bebés<br><span x-text="passengers.babyage+ ' años'">0 - 3 años</span><br><i>Sin ocupar plaza</i></div>
<div class="qty">
<div class="qty_inc_dec">
<button type="button" class="bt-qty bt-qty--dc decrement" @click="decreasePassengers('toddler')" :id="$id('passengers-decrease')"></button>
<input type="text" name="qty" :value="passengers.passengersList.filter(p => p.type == 'toddler').length" class="qty-in">
<button type="button" class="bt-qty bt-qty--in increment" @click="increasePassengers('toddler')" :id="$id('passengers-increase')"></button>
</div>
</div>
</div>
<ul class="saved-passengers">
<template x-for="passenger in passengers.savePassengers.filter(p => p.type == 'toddler')">
<li class="saved-passengers__item">
<label class="checkbox-wrapper">
<div class="checkbox checkbox--regular">
<input x-bind:checked="passengers.selectedSavePassengers.has(passenger.id)" type="checkbox" @click="increaseSavePassengers('toddler',passenger.id,passenger.savedCards,this,passenger.discountNums)">
<span></span>
</div>
<span x-text="passenger.name+' '+passenger.surname"></span>
</label>
</li>
</template>
</ul>
</div>
<template x-if="passengers.discountCardActive || mostraredadninos==1">
<div class="item-body">
<template x-for="(toddler, index) in passengers.passengersList.filter(p => p.type == 'toddler')">
<div class="pass-entry">
<div class="pass-entry__head">
<span x-text="`Niño ${index + 1}`"></span>
<select x-show="mostraredadninos==1" name="" id="" x-model="toddler.age">
<option disabled="" selected="" value="">Edad</option>
<template x-for="(year, index) in passengers.tolderyears" :key="index">
<option :value="year" x-text="year+ ' años'"></option>
</template>
</select>
<i x-show="passengers.discountCardActive" class="pass-entry__icon" @click="openModalCard();selectPassengerCards(toddler)"></i>
</div>
<ul class="pass-entry__list" x-show="passengers.discountCardActive">
<template x-for="card in Array.from(toddler.discountCards)">
<li x-text="passengers.namecars[card]"></li>
</template>
</ul>
</div>
</template>
</div>
</template>
</div>
</template>
<template x-if="passengers.seniors==1">
<div class="pass-tg__item" :id="$id('passengers-type')">
<div class="item-head">
<div class="item-head__intro">
<div>Senior<br><span x-text="passengers.seniorage+ ' años'">+ 59 años</span></div>
<div class="qty">
<div class="qty_inc_dec">
<button type="button" class="bt-qty bt-qty--dc decrement" @click="decreasePassengers('senior')" :id="$id('passengers-decrease')"></button>
<input type="text" name="qty" :value="passengers.passengersList.filter(p => p.type == 'senior').length" class="qty-in">
<button type="button" class="bt-qty bt-qty--in increment" @click="increasePassengers('senior')" :id="$id('passengers-increase')"></button>
</div>
</div>
</div>
<ul class="saved-passengers">
<template x-for="passenger in passengers.savePassengers.filter(p => p.type == 'senior')">
<li class="saved-passengers__item">
<label class="checkbox-wrapper">
<div class="checkbox checkbox--regular">
<input x-bind:checked="passengers.selectedSavePassengers.has(passenger.id)" type="checkbox" @click="increaseSavePassengers('senior',passenger.id,passenger.savedCards,this,passenger.discountNums)">
<span></span>
</div>
<span x-text="passenger.name+' '+passenger.surname"></span>
</label>
</li>
</template>
</ul>
</div>
<template x-if="passengers.discountCardActive || mostraredadsenior==1">
<div class="item-body">
<template x-for="(senior, index) in passengers.passengersList.filter(p => p.type == 'senior')">
<div class="pass-entry">
<div class="pass-entry__head">
<span x-text="`Senior ${index + 1}`"></span>
<select x-show="mostraredadsenior==1" name="" id="" x-model="toddler.age">
<option disabled="" selected="" value="">Edad</option>
<option value="59">59 años</option>
<option value="60">60 años</option>
<option value="61">61 años</option>
<option value="62">62 años</option>
<option value="63">63 años</option>
<option value="64">64 años</option>
<option value="65">65 años</option>
<option value="66">66 años</option>
<option value="67">67 años</option>
<option value="68">68 años</option>
<option value="69">69 años</option>
<option value="70">70 años</option>
<option value="71">71 años</option>
<option value="72">72 años</option>
<option value="73">73 años</option>
<option value="74">74 años</option>
<option value="75">75 años</option>
<option value="76">76 años</option>
<option value="77">77 años</option>
<option value="78">78 años</option>
<option value="79">79 años</option>
<option value="80">80 años</option>
<option value="81">81 años</option>
<option value="82">82 años</option>
<option value="83">83 años</option>
<option value="84">84 años</option>
<option value="85">85 años</option>
<option value="86">86 años</option>
<option value="87">87 años</option>
<option value="88">88 años</option>
<option value="89">89 años</option>
<option value="90">90 años</option>
<option value="91">91 años</option>
<option value="92">92 años</option>
<option value="93">93 años</option>
<option value="94">94 años</option>
<option value="95">95 años</option>
<option value="96">96 años</option>
<option value="97">97 años</option>
<option value="98">98 años</option>
<option value="99">99 años</option>
<option value="100">100 años</option>
</select>
<i x-show="passengers.discountCardActive" class="pass-entry__icon" @click="openModalCard();selectPassengerCards(senior)"></i>
</div>
<ul class="pass-entry__list" x-show="passengers.discountCardActive">
<template x-for="card in Array.from(senior.discountCards)">
<li x-text="passengers.namecars[card]"></li>
</template>
</ul>
</div>
</template>
</div>
</template>
</div>
</template>
<div class="pass-tg__item ">
<div class="item-head">
<div class="item-head__intro">
<label class="checkbox-wrapper" style="font-weight:normal">
<div class="checkbox checkbox--regular">
<input type="checkbox" x-model="passengers.discountCardActive" x-bind:disabled="passengers.discountCardDisabled">
<span></span>
</div> Añadir tarjeta de descuento
</label>
</div>
<div x-show="passengers.discountCardDisabled" class="alert" style="margin-bottom:1rem; margin-top:1rem">
<svg class="alert__icon" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<defs>
<circle id="Exclamation__a" cx="12" cy="12" r="10"></circle>
<path d="M12 6a1 1 0 0 1 1 1v7a1 1 0 0 1-2 0V7a1 1 0 0 1 1-1zm0 12a1 1 0 1 1 0-2 1 1 0 0 1 0 2z" id="Exclamation__b"></path>
</defs>
<g fill="none" fill-rule="evenodd">
<use fill="currentColor" xlink:href="#Exclamation__a"></use>
<use fill="#fff" xlink:href="#Exclamation__b"></use>
</g>
</svg>
<div>Selecciona tu <b>origen</b> y <b>destino</b> antes de añadir tarjetas descuento.</div>
</div>
</div>
</div>
<div class="pass-tg__item">
<div class="item-head">
<div class="item-head__intro">
<label class="checkbox-wrapper" style="font-weight:normal">
<div class="checkbox checkbox--regular">
<input id="ph" type="checkbox" @click="setPlazaH" x-bind:disabled="enablePlazaH==0">
<span></span>
</div> Viajero en silla de ruedas
</label>
</div>
</div>
</div>
<div class="panel-footer">
<button type="button" class="bt bt--blue" @click="closeModal();passengers.open = false; bodyOverflow = false">Confirmar</button>
</div>
</div>
</div>
</div>
<button @click="submit" class="bt bt--search" type="button"><i></i><span>Buscar</span></button>
<div style="display: none;" x-show="modal.open" class="generic-modal" role="dialog" aria-labelledby="modal" aria-modal="true" tabindex="0">
<div class="generic-modal__backdrop" x-show="modal.open" x-transition.opacity=""></div>
<div class="generic-modal__body" x-show="modal.open" @click.outside="modal.open = false" x-transition="">
<div class="generic-modal__header">
<h3 x-text="jsTrans_errorModalTitle"></h3>
<svg @click="modal.open = false" xmlns="http://www.w3.org/2000/svg" version="1" viewBox="0 0 24 24">
<path d="M13 12l5-5-1-1-5 5-5-5-1 1 5 5-5 5 1 1 5-5 5 5 1-1z"></path>
</svg>
</div>
<div class="generic-modal__content">
<ul>
<template x-for="error in errors">
<li x-html="error"></li>
</template>
</ul>
</div>
</div>
</div>
</div>
</div>
<div class="toggle-switch bookingCheckbox">
<input x-model="passengers.booking" type="checkbox" checked="checked" id="bookingCheckbox">
<label for="bookingCheckbox"><span>Buscar también alojamiento en Booking.com</span></label>
</div>
</form>
Name: buscadorHorarios — POST https://www.trenes.com/_horarios/resultados.php
<form name="buscadorHorarios" id="buscadorHorarios" action="https://www.trenes.com/_horarios/resultados.php" method="post">
</form>
<form class="travelform travelform--small" autocomplete="off" x-data="homeSchedules" action="">
<div class="travelform__row travelform__row--full">
<div class="travelform__col travelform__col--full">
<div x-data="locationInput" class="locations-input" @click.outside="open = false">
<input x-ref="input" x-model="inputs.departure" @input="getLocationsH" class="form__input form__input--origin" type="text" name="origin" placeholder="Elige origen" onclick="this.select();">
<div id="hero-origin-menu" class="locations-wrapper" hidden="" x-bind:class="{ 'active': open }">
<header class="locations-mobile__header">
<button type="button" @click="open = false; bodyOverflow = false">
<img src="/webVersions/v21/images/icons/icon-arrow-left-blue.svg" width="32px" height="32px" alt="" loading="lazy">
</button>
<input x-model="inputs.departure" type="text" @input="getLocationsH" placeholder="Ciudad o Estación" x-trap="open">
</header>
<div class="list-wrapper" x-show="Object.keys(locations).length>0">
<ul>
<template x-for="location in locations">
<ul>
<template x-if="location.code>0">
<li class="item item--location" @click="select2(location)">
<svg class="item--location__icon" viewBox="0 0 24 24" width="24" height="24" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<defs>
<path d="M12 13a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-8-3a8 8 0 1 1 16 0c0 1.842-1.176 4.053-3.53 6.635L12 22l-4.47-5.365C5.175 14.053 4 11.842 4 10z" id="Pin__a"></path>
</defs>
<use fill="currentColor" xlink:href="#Pin__a" fill-rule="evenodd"></use>
</svg>
<span x-text="location.city"></span>
</li>
</template>
<template x-if="location.code>0">
<template x-for="station in location.stations">
<li class="item item--train-station" @click="select2(station)">
<img src="/webVersions/v21/images/icons/icon-tren2.svg" width="18px" height="18px" alt="" loading="lazy">
<span x-text="station.name"></span>
</li>
</template>
</template>
<template x-if="location.code==0">
<template x-for="station in location.stations">
<li class="item item--train-location" @click="select2(station)">
<img src="/webVersions/v21/images/icons/icon-tren2.svg" width="18px" height="18px" alt="" loading="lazy">
<span x-text="station.name"></span>
</li>
</template>
</template>
</ul>
</template>
</ul>
</div>
</div>
</div>
<button @click="swapLocationInputs" type="button" class="changer"></button>
<div x-data="locationInput" class="locations-input" @click.outside="open = false">
<input x-ref="input" x-model="inputs.destination" @input="getLocationsH" class="form__input form__input--pointer" type="text" name="destination" placeholder="Elige destino" onclick="this.select();">
<div id="hero-destination-menu" class="locations-wrapper" hidden="" x-bind:class="{ 'active': open }">
<header class="locations-mobile__header">
<button type="button" @click="open = false; bodyOverflow = false">
<img src="/webVersions/v21/images/icons/icon-arrow-left-blue.svg" width="32px" height="32px" alt="" loading="lazy">
</button>
<input x-model="inputs.destination" type="text" @input="getLocationsH" placeholder="Ciudad o Estación" x-trap="open">
</header>
<div class="list-wrapper" x-show="Object.keys(locations).length>0">
<ul>
<template x-for="location in locations">
<ul>
<template x-if="location.code>0">
<li class="item item--location" @click="select2(location)">
<svg class="item--location__icon" viewBox="0 0 24 24" width="24" height="24" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<defs>
<path d="M12 13a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-8-3a8 8 0 1 1 16 0c0 1.842-1.176 4.053-3.53 6.635L12 22l-4.47-5.365C5.175 14.053 4 11.842 4 10z" id="Pin__a"></path>
</defs>
<use fill="currentColor" xlink:href="#Pin__a" fill-rule="evenodd"></use>
</svg>
<span x-text="location.city"></span>
</li>
</template>
<template x-if="location.code>0">
<template x-for="station in location.stations">
<li class="item item--train-station" @click="select2(station)">
<img src="/webVersions/v21/images/icons/icon-tren2.svg" width="18px" height="18px" alt="" loading="lazy">
<span x-text="station.name"></span>
</li>
</template>
</template>
<template x-if="location.code==0">
<template x-for="station in location.stations">
<li class="item item--train-location" @click="select2(station)">
<img src="/webVersions/v21/images/icons/icon-tren2.svg" width="18px" height="18px" alt="" loading="lazy">
<span x-text="station.name"></span>
</li>
</template>
</template>
</ul>
</template>
</ul>
</div>
</div>
</div>
</div>
</div>
<div class="travelform__row">
<div class="travelform__col travelform__col--full">
<input class="form__input form__input--calendar form__input--left" id="departure" name="departure" placeholder="Fecha de ida" readonly="">
</div>
<div class="travelform__col travelform__col--md">
<button @click="submit" class="bt bt--search" type="button"><i></i><span>Buscar</span></button>
<div style="display: none;" x-show="modal.open" class="generic-modal" role="dialog" aria-labelledby="modal" aria-modal="true" tabindex="0">
<div class="generic-modal__backdrop" x-show="modal.open" x-transition.opacity=""></div>
<div class="generic-modal__body" x-show="modal.open" @click.outside="modal.open = false" x-transition="">
<div class="generic-modal__header">
<h3 x-text="jsTrans_errorModalTitle"></h3>
<svg @click="modal.open = false" xmlns="http://www.w3.org/2000/svg" version="1" viewBox="0 0 24 24">
<path d="M13 12l5-5-1-1-5 5-5-5-1 1 5 5-5 5 1 1 5-5 5 5 1-1z"></path>
</svg>
</div>
<div class="generic-modal__content">
<ul>
<template x-for="error in errors">
<li x-html="error"></li>
</template>
</ul>
</div>
</div>
</div>
</div>
</div>
<!--a class="link" href="#">¿Qué horarios puedo buscar?</a-->
</form>
POST
<form class="newsletterform" method="post" @submit.prevent="submitform">
<div class="newsletterform__row">
<div class="newsletterform__col">
<input required="" class="form__input form__input--newsletter" type="email" id="news_mail" name="news_mail" placeholder="E-mail">
</div>
<div class="newsletterform__col">
<input class="form__input form__input--calendar" id="news_date" name="news_date" placeholder="Fecha de tu viaje" readonly="">
</div>
<div class="newsletterform__col">
<input type="submit" class="bt" value="Enviar">
</div>
</div>
<div class="newsletterform__row newsletterform__row--full">
<div class="newsletterform__col">
<label class="checkbox-wrapper checkbox-wrapper--legal">
<div class="checkbox checkbox--regular">
<input required="" type="checkbox" name="privacy_policy_acceptance">
<span></span>
</div>
<div>He leído y acepto las <a rel="nofollow" data-fancybox="" data-type="iframe" data-slide-class="loginModalConditions" data-src="https://www.trenes.com/privacy.php" href="javascript:;">políticas de privacidad</a>,
<a rel="nofollow" data-fancybox="" data-type="iframe" data-slide-class="loginModalConditions" data-src="https://www.trenes.com/pdatos.php" href="javascript:;">protección de datos</a>,
<a rel="nofollow" data-fancybox="" data-type="iframe" data-slide-class="loginModalConditions" data-src="https://www.trenes.com/conditions.php" href="javascript:;">condiciones generales</a> de ONLINE TRAVEL SOLUTIONS.</div>
</label>
</div>
</div>
</form>
Text Content
ES * English * Français * Italiano * Portugues * Deutsch Ayuda Mis Billetes Iniciar Sesión Español * English * Français * Italiano * Portugues * Deutsch * Buscar billetes de tren * Cambiar o anular billetes * Crea una cuenta de usuario * Preguntas Frecuentes * Ayuda Iniciar Sesión Cerrar sesión ¿Estas seguro de querer cerrar la sesión de usuario? Busca | Compara | Compra SI VA POR RAÍLES, ESTÁ EN TRENES.COM Busca | Compara | Compra SI VA POR RAÍLES, ESTÁ EN TRENES.COM Tus búsquedas más recientes Más buscados Tus búsquedas más recientes Más buscados Tarjetas de descuento Eliminar Confirmar Pasajeros Adultos 26 - 59 años Joven 14 - 25 años Edad 14 años 15 años 16 años 17 años 18 años 19 años 20 años 21 años 22 años 23 años 24 años 25 años Niños 0 - 13 años Edad Bebés 0 - 3 años Sin ocupar plaza Edad Senior + 59 años Edad 59 años 60 años 61 años 62 años 63 años 64 años 65 años 66 años 67 años 68 años 69 años 70 años 71 años 72 años 73 años 74 años 75 años 76 años 77 años 78 años 79 años 80 años 81 años 82 años 83 años 84 años 85 años 86 años 87 años 88 años 89 años 90 años 91 años 92 años 93 años 94 años 95 años 96 años 97 años 98 años 99 años 100 años Añadir tarjeta de descuento Selecciona tu origen y destino antes de añadir tarjetas descuento. Viajero en silla de ruedas Confirmar Buscar Buscar también alojamiento en Booking.com COMPRA TUS BILLETES DE PRINCIPALES DESTINOS ALTA VELOCIDAD Ver más rutas Alta Velocidad Alta Velocidad Madrid Alta Velocidad Sevilla Alta Velocidad Barcelona Alta Velocidad Málaga Alta Velocidad Valencia Alta Velocidad Córdoba PRINCIPALES DESTINOS TREN Ver más ofertas de billetes de tren Tren Madrid Tren Barcelona Tren Sevilla Tren Valencia Tren Málaga Tren Córdoba TUS BILLETES, CONTIGO SIEMPRE Descarga tus billetes en PDF o recíbelos por SMS. SI VA POR RAILES, ESTÁ EN TRENES.COM ¡Bienvenido a Trenes.com! Nuestro objetivo es el tuyo, poder comprar billetes de tren baratos de forma sencilla y cómoda. Para ello hemos creado y diseñado una plataforma global de reserva de billetes de tren online para que puedas encontrar el billete de tren que necesitas. Ya sea por que buscas el mejor precio, confort, velocidad o flexibilidad, te será muy fácil y cómodo encontrar tus billetes. ¡Distribuidores oficiales de las principales operadoras ferroviarias! Gracias a acuerdos directos con los principales operadores ferroviarios cómo: Renfe, iryo, Ouigo, Deutsche Bahn, SNCF, Italo treno, Trenitalia y más. Emitimos los billetes oficiales de estos operadores y gracias a nuestro avanzado algoritmo te ofrecemos todas las combinaciones posibles para que puedas comprar los billetes que mejor se adapten a tus necesidades. ¡Busca, compara, elige y compra! Lo hacemos fácil, queremos que tu experiencia de compra sea tan buena como la del mejor viaje en tren, para ello hemos diseñado una interfaz amigable, intuitiva y fácil de usar, así, puedes comparar, elegir la mejor opción y comprar tus billetes en un entorno seguro y adaptado para tener la mejor experiencia. ¡mucho más! Y lo mejor de todo es que en tanto en tu correo electrónico, en el apartado "Mi Cuenta" como en la APP podrás acceder fácilmente a tus billetes y facturas, así como realizar cambios o cancelaciones cuando la tarifa lo permita. Todo desde la comodidad de tu casa o donde te encuentres. Además, con el billete electrónico, ya no es necesario que imprimas, muestra el código Bidi de tu billete y sube directamente al tren. BILLETES MÁS BARATOS BILLETES MÁS BARATOS EN TREN Tren Barcelona Madrid Fecha:28/02/2024 desde:Desde 7,00€ Tren Madrid Barcelona Fecha:06/02/2024 desde:Desde 7,00€ Tren Madrid Sevilla Fecha:12/02/2024 desde:Desde 7,00€ Tren Madrid Málaga Fecha:24/02/2024 desde:Desde 7,00€ Tren Alicante (Alacant) Madrid Fecha:07/02/2024 desde:Desde 7,00€ Tren Sevilla Madrid Fecha:14/01/2024 desde:Desde 7,00€ Ver más ofertas en billetes de tren BILLETES MÁS BARATOS EN ALTA VELOCIDAD Tren Barcelona Madrid Fecha:28/02/2024 desde:Desde 7,00€ Tren Madrid Barcelona Fecha:06/02/2024 desde:Desde 7,00€ Tren Madrid Sevilla Fecha:12/02/2024 desde:Desde 7,00€ Tren Madrid Málaga Fecha:24/02/2024 desde:Desde 7,00€ Tren Alicante (Alacant) Madrid Fecha:07/02/2024 desde:Desde 7,00€ Tren Sevilla Madrid Fecha:14/01/2024 desde:Desde 7,00€ Ver más ofertas en billetes de Alta Velocidad HORARIOS DE TRENES Consulta los horarios de los trenes, AVE y trenes internacionales en Trenes.com. Buscar OFERTAS EN BILLETES DE TREN Trayecto Operador Tren Fecha Precio Trenes Madrid Atocha Barcelona Sants Tren:Avlo Fecha:06/02/2024 Desde:Desde 7,00€ Trenes Murcia Barcelona Sants Tren:Intercity Fecha:15/02/2024 Desde:Desde 28,00€ Trenes Zaragoza Delicias Granada Tren:AVE Fecha:31/01/2024 Desde:Desde 20,90€ Trenes Madrid Chamartín Valencia Joaquín Sorolla Tren:Avlo Fecha:17/01/2024 Desde:Desde 7,00€ Trenes Girona (gerona) Madrid Atocha Tren:Avlo Fecha:30/04/2024 Desde:Desde 15,00€ Trenes Jerez De La Frontera Madrid Atocha Tren:Alvia Fecha:31/01/2024 Desde:Desde 18,00€ Trenes Madrid Chamartín Albacete-los Llanos Tren:Avlo Fecha:10/12/2023 Desde:Desde 7,00€ Trenes Madrid Atocha Castellón De La Plana Tren:AVE Fecha:08/01/2024 Desde:Desde 14,00€ Trenes Ourense (orense) Santiago De Compostela Tren:Regional Fecha:19/11/2023 Desde:Desde 10,35€ Trenes Zumárraga Madrid Chamartín Tren:Intercity Fecha:19/01/2024 Desde:Desde 17,70€ Trenes Barcelona Sants Santiago De Compostela Tren:Alvia Fecha:17/02/2024 Desde:Desde 18,40€ Trenes Camp Tarragona Sevilla Santa Justa Tren:Torre Oro Fecha:16/05/2024 Desde:Desde 18,20€ Trenes Xátiva (játiva) Alcoi (alcoy) Tren:Regional Fecha:21/01/2024 Desde:Desde 5,65€ Trenes Camp De Tarragona Zaragoza Delicias Tren:Ouigo Fecha:12/03/2024 Desde:Desde 9,00€ Trenes Madrid Atocha Girona (gerona) Tren:Avlo Fecha:20/01/2024 Desde:Desde 7,00€ VIAJAR EN TREN ES DE LISTOS, ¡COMPRARLO AL MEJOR PRECIO LO ES MÁS! Los mejores precios se consiguen en el momento que salen los billetes a la venta, ¡suscríbete y te avisamos para que no se te escapen las mejores ofertas! He leído y acepto las políticas de privacidad, protección de datos, condiciones generales de ONLINE TRAVEL SOLUTIONS. FORMULARIO ENVIADO CORRECTAMENTE OPINIONES DE NUESTROS CLIENTES 4.6/5 Verified Reviews Trinidad Tomás Gómez Por motivo de la huelga de Renfe nos vimos afectados y desde el primer minuto nos atendieron y nos dieron facilidades para cambio y devolución... Leer completa Trinidad Tomás Gómez Por motivo de la huelga de Renfe nos vimos afectados y desde el primer minuto nos atendieron y nos dieron facilidades para cambio y devolución. Una compañía muy seria y trato inmejorable . Un 10 ! Charo De Felipe Raúl, la persona más eficaz, insistente y amable que no ha dejado de insistir en conseguir mis billetes de tren... Leer completa Charo De Felipe Raúl, la persona más eficaz, insistente y amable que no ha dejado de insistir en conseguir mis billetes de tren. Muchas gracias a él que hace que algo complicado se vuelva fácil M.A Lazaro Estoy muy contenta con Trenes.com. La he aconsejado a varios amigos. Llevo 3 años con ellos y siempre me han resuelto todos los problemas... Leer completa M.A Lazaro Estoy muy contenta con Trenes.com. La he aconsejado a varios amigos. Llevo 3 años con ellos y siempre me han resuelto todos los problemas. Son muy atentos. Y solo tienes que solicitar que te llamen y en unos minutos están en contacto contigo. Durante la pandemia me devolvieron todos los billetes que tenía solicitado. Y tenia unos cuantos billetes. Gracias chicos. Sois fabulosos Fernando Sobrino-Manzanares Mas Son muy resolutivos y eficaces. Les escribí un correo para cambiar un billete de fecha... Leer completa Fernando Sobrino-Manzanares Mas Son muy resolutivos y eficaces. Les escribí un correo para cambiar un billete de fecha, ya que no podia desde la web, y Sandra S. me llamó en el mismo día para cambiarlo, muy profesional. Volvería sin duda a comprar en trenes.com Rafael Mora Buena agencia virtual. Volveré a sacar billetes próximamente. Leer completa Rafael Mora Buena agencia virtual. Volveré a sacar billetes próximamente. EVA RUIZ PERIS Me han resuelto el problema en diez minutos. Cambio de billetes. La operadora que me ha llamado Sandra Mateo, excelente, resolutiva y explicándome... Leer completa EVA RUIZ PERIS Me han resuelto el problema en diez minutos. Cambio de billetes. La operadora que me ha llamado Sandra Mateo, excelente, resolutiva y explicándome todas las posibilidades con una gran paciencia. Hacia mucho que no encontraba gente así. Muchas gracias, Trenes. com y especialmrnte un 10 a Sandra Mateo. Javier Horna Borré por error el correo dónde me había mandado el billete de tren y cuando les comunico la incidencia, me lo reenviaron inmediatamente Leer completa Javier Horna Borré por error el correo dónde me habían mandado el billete de tren y cuando les comunico la incidencia, me lo reenviaron inmediatamente Andres Leyton Necesitaba realizar el cambió de un billete y me lo resolvieron con mucha rapidez, un trato estupendo... Leer completa Andres Leyton Necesitaba realizar el cambió de un billete y me lo resolvieron con mucha rapidez, un trato estupendo, muy contento con el servicio de atención al cliente. Luisa María Gil Muchas gracias a Sandra por su excelente y puntual comunicacion y resolucion de un cambio de billetes... Leer completa Luisa María Gil Muchas gracias a Sandra por su excelente y puntual comunicacion y resolucion de un cambio de billetes, que veia imposible telefonicamente e incluso por pagina web. Siempre es preferible ponerle voz a una atencion. Un saludo. Ver todas las opiniones * Política de Privacidad * Condiciones Generales * Política de Cookies * Política de Seguridad * Aviso Legal * Contacto * Quiénes Somos Copyright © Trenes.com. Todos los derechos reservados. * * * *