PageSourceSearch

https://www.chayaryokan.co.jp/en/js/search.js

js chayaryokan.co.jp collected 2026-09-30 17:49:57 UTC 4,866 bytes, 159 lines download raw bytes

1$(function(){
2
3	//オブジェクトの設定
4	var ypro = {
5		$form : $('.obj_search'),
6		$date : [$('.obj_year'), $('.obj_month'), $('.obj_day')],
7		$datepicker : $('.datepicker'),
8		$noDate : $('.obj_no_date'),
9		$min : $('.obj_budget_min'),
10		$max : $('.obj_budget_max'),
11		$minOption : $('.obj_budget_min').find('option'),
12		$maxOption : $('.obj_budget_max').find('option'),
13		$persons: $('.obj_per_num'),
14		$stay: $('.obj_stay_num'),
15		$rooms: $('.obj_room_num')
16	}
17
18	//日付のdisabled設定
19	ypro.$noDate.change(function(){
20		if($(this).prop('checked')) {
21			choiceForm(this,ypro.$datepicker).prop('disabled', true);
22			$(this).parents('.obj_search').find('.box_day .datepicker').addClass('disabled');
23		} else {
24			choiceForm(this,ypro.$datepicker).prop('disabled', false);
25			$(this).parents('.obj_search').find('.box_day .datepicker').removeClass('disabled');
26		}
27	});
28
29	//料金のdisabled設定
30	ypro.$min
31	.prop('selectedIndex',0)
32	.change(function(){
33		var number = $(this).prop('selectedIndex');
34		if(number >= 1)
35			choiceForm(this,ypro.$maxOption).prop('disabled', false)
36				.filter(':not(:last):lt('+ (number - 1) +')').prop('disabled', true);
37		else
38			choiceForm(this,ypro.$maxOption).prop('disabled', false);
39	});
40	ypro.$max
41	.prop('selectedIndex',14)
42	.change(function(){
43		var number = $(this).prop('selectedIndex');
44		if(number <= 13)
45			choiceForm(this,ypro.$minOption).prop('disabled', false)
46				.filter(':not(:first):gt('+ (number) +')').prop('disabled', true);
47		else
48			choiceForm(this,ypro.$minOption).prop('disabled', false);
49	});
50
51	// クロスドメイントラッキング設定
52	ypro.$form.submit(function(){
53		var target = this;
54		ga(function(tracker) {
55			var linker = new window.gaplugins.Linker(tracker);
56			target.action = linker.decorate(target.action);
57		});
58	});
59
60	//月の設定
61	var _monthNames = [
62		'<span class="num">1</span><span class="txt_month">月</span>',
63		'<span class="num">2</span><span class="txt_month">月</span>',
64		'<span class="num">3</span><span class="txt_month">月</span>',
65		'<span class="num">4</span><span class="txt_month">月</span>',
66		'<span class="num">5</span><span class="txt_month">月</span>',
67		'<span class="num">6</span><span class="txt_month">月</span>',
68		'<span class="num">7</span><span class="txt_month">月</span>',
69		'<span class="num">8</span><span class="txt_month">月</span>',
70		'<span class="num">9</span><span class="txt_month">月</span>',
71		'<span class="num">10</span><span class="txt_month">月</span>',
72		'<span class="num">11</span><span class="txt_month">月</span>',
73		'<span class="num">12</span><span class="txt_month">月</span>'
74	];
75
76	//datepicker
77	ypro.$datepicker.datepicker({
78		monthNames : _monthNames,
79		monthNamesShort : ['1月','2月','3月','4月','5月','6月','7月','8月','9月','10月','11月','12月'],
80		dayNames : ['日曜日','月曜日','火曜日','水曜日','木曜日','金曜日','土曜日'],
81		dayNamesMin : ['日','月','火','水','木','金','土'],
82		dateFormat : 'yy/mm/dd',
83		nextText : '次へ',
84		prevText : '前へ',
85		showOtherMonths : true,
86		selectOtherMonths : true,
87		firstDay : 0,
88		isRTL : false,
89		showMonthAfterYear : true,
90		yearSuffix : 'å¹´',
91		numberOfMonths : 2,
92		minDate : '+0d',
93		onSelect : function(dateText, inst) {
94			var arrDate = dateText.split('/');
95			choiceForm(this,ypro.$date[0]).val(arrDate[0]);
96			choiceForm(this,ypro.$date[1]).val(arrDate[1]);
97			choiceForm(this,ypro.$date[2]).val(arrDate[2]);
98		}
99	});
100
101	ypro.$persons.on('change', function() {
102		$(this).parents('.obj_search').find('.box_per select[name="obj_per_num"]').val($(this).val());
103		$(this).parents('.obj_search').find('#per_box').text($(this).val());
104	});
105
106	ypro.$stay.on('change', function() {
107		$(this).parents('.obj_search').find('.box_sta select[name="obj_stay_num"]').val($(this).val());
108		$(this).parents('.obj_search').find('#sta_box').text($(this).val());
109	});
110
111	ypro.$rooms.on('change', function() {
112		$(this).parents('.obj_search').find('.box_roo select[name="obj_room_num"]').val($(this).val());
113		$(this).parents('.obj_search').find('#roo_box').text($(this).val());
114	});
115
116
117	change_val_first();
118
119});
120
121//検索
122function submitForm(el) {
123	$(el).submit();
124	return false;
125}
126
127//選択
128function choiceForm(el,target) {
129	return $(el).parents('.obj_search').find($(target));
130}
131
132//初期読み込み キャッシュ反映
133function change_val_first() {
134
135	//日付未定
136	if($('.obj_no_date').prop('checked')) {
137		$(".box_day .datepicker").prop('disabled', true).addClass('disabled');
138	}
139
140	//人数
141	var $per_box = $('#per_box'),
142		$obj_per = $('.obj_per_num');
143
144	$per_box.text($obj_per.val());
145
146
147	//泊数
148	var $stay_box = $('#sta_box'),
149		$obj_stay = $('.obj_stay_num');
150
151	$stay_box.text($obj_stay.val());
152
153	//部屋数
154	var $room_box = $('#roo_box'),
155		$obj_room = $('.obj_room_num');
156
157	$room_box.text($obj_room.val());
158
159}

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.