Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 13.02.2013, 11:27
Аватар для SleepWalker15
Интересующийся
Отправить личное сообщение для SleepWalker15 Посмотреть профиль Найти все сообщения от SleepWalker15
 
Регистрация: 23.01.2013
Сообщений: 14

Создание первого скрипта
Добрый вечер, никогда с программированием не сталкивался, только изучал материал представленный на этом сайте.

Идея в том чтобы заменить прайс лист (картинка во вложении) на сайте джава скриптом (фотка хтмл документа во вложении).


Как должно работать: при выборе строки 3 и столбца 200 и при нажатие на кнопку "рассчитать" в ответе появятся число соответствующее число
по картинке "160".

или при выборе 1 строки и 100 столбца в ответе появятся число 125.

Как лучше сделать??

Составить 3 массива: для строк (1 - 6), для столбцов (50 - 1000), для ответов со значением 130 до 92 (см код),

и воспользоватся "if", чтобы при выборе строки "1-6" и столбцов "50-1000" выводилось подходящее значение из массива "answer" в окошко "total".

Или таким способом вообще не получится?

<!DOCTYPE html>
<html>
<head>


<style type="text/css">
</style>
<script type="text/javascript">
var base = [50,100,200,300,400,500,600,700,800,1000];
var time = [1,2,3,4,5,6,];
var answer = [[130,115,104,89,83,75,75,69,67,63],
                  [167,140,125,103,93,85,79,77,75,69],
                  [200,167,160,118,105,95,87,84,81,75],
                  [234,192,183,132,120,100,95,91,89,79]
				  [267,218,206,146,139,110,101,98,95,85]
				  [300,244,230,160,150,120,108,105,101,92]]

function calc() {
	

	document.getElementById('total').value=rez;
};
</script>
</head>
<body>
<form>
	<div>
		<table width="532" border="0" align="center">
		<tbody>
			<tr>
				<td width="256">50 - 1000</td>
				<td width="260">
					<select name="column" id="column">
						<option value="0">от 50</option>
						<option value="1">от 100</option>
						<option value="2">от 200</option>
						<option value="3">от 300</option>
						<option value="4">от 400</option>
						<option value="5">от 500</option>
						<option value="6">от 600</option>
						<option value="7">от 700</option>
						<option value="8">от 800</option>
						<option value="9">от 1000</option>
					</select>
				</td>
			</tr>
			<tr>
				<td>1 - 6</td>
				<td>
					<select name="hours" id="colum1">
						<option value="0">1</option>
						<option value="1">2</option>
						<option value="2">3</option>
						<option value="3">4</option>
						<option value="4">5</option>
						<option value="5">6</option>
					</select>
				</td>
			</tr>
			
				
		
			<tr>
			<td></td>
			<td>
				<input type="button" value="Рассчитать" onclick="calc();"> 
				<input type="reset" value="Сброс">
			</td>  
			</tr>
			<tr>
				<td>Итого: </td>
				<td><input name="total" id="total" type="text" size="8"></td>
			</tr>
			</tbody>
		</table>
	</div>
</form>
</body>
</html>
Изображения:
Тип файла: jpg прайс.jpg (57.2 Кб, 13 просмотров)
Тип файла: png скрипт2.png (4.5 Кб, 9 просмотров)
Ответить с цитированием
  #2 (permalink)  
Старый 13.02.2013, 13:39
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,228

Сообщение от SleepWalker15
при выборе строки 3 и столбца 200 и при нажатие на кнопку "рассчитать" в ответе появятся число соответствующее число
по картинке "160".
Вроде как на картинке так...

Сообщение от SleepWalker15
при выборе 1 строки и 100 столбца в ответе появятся число 125
На картинке уже 115!

Нипанятна.
Ответить с цитированием
  #3 (permalink)  
Старый 13.02.2013, 13:43
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,228

Сообщение от SleepWalker15
Составить 3 массива
Если делать "как в табличке, что на картинке" - хватит и двух массивов...

var base = [50,100,200,300,400,500,600,700,800,1000];
var answer = [
	[130,115,104,89,83,75,75,69,67,63],
	[167,140,125,103,93,85,79,77,75,69],
	[200,167,160,118,105,95,87,84,81,75],
	[234,192,183,132,120,100,95,91,89,79]
	[267,218,206,146,139,110,101,98,95,85]
	[300,244,230,160,150,120,108,105,101,92]
];
Ответить с цитированием
  #4 (permalink)  
Старый 13.02.2013, 14:04
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,228

Что-то типа такого...

<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<!--
<link rel="stylesheet" type="text/css" href="tmp.css" />
-->
<style type="text/css">
</style>
<script type="text/javascript">
var base = [50,100,200,300,400,500,600,700,800,1000];
var a = [
	[130,115,104,89,83,75,75,69,67,63],
	[167,140,125,103,93,85,79,77,75,69],
	[200,167,160,118,105,95,87,84,81,75],
	[234,192,183,132,120,100,95,91,89,79],
	[267,218,206,146,139,110,101,98,95,85],
	[300,244,230,160,150,120,108,105,101,92]
];
$(document).ready(function (){
	(function (){
		var o=$('#s1');
		var i;
		o.append('<option value=""></option>')
		for (i=0; i<a.length; i++) {
			o.append('<option value="'+i+'">'+(i+1)+'</option>')
		};
		o=$('#s2')
		o.append('<option value=""></option>')
		for (i=0; i<base.length; i++) {
			o.append('<option value="'+i+'">От '+base[i]+'</option>')
		};
	})();
	$('select').change(function (){
		var s1=$('#s1').val();
		var s2=$('#s2').val();
		if (s1==''||s2=='') return;
		$('#itg').text(a[s1][s2]);
	});
});
</script>
</head>
<body>
<select id='s1'></select>
<select id='s2'></select>
<p>Итого: <span id='itg'></span></p>
</body>
</html>
Ответить с цитированием
  #5 (permalink)  
Старый 14.02.2013, 09:30
Новичок на форуме
Отправить личное сообщение для sinyakov Посмотреть профиль Найти все сообщения от sinyakov
 
Регистрация: 13.02.2013
Сообщений: 6

И все же, друзья! Могли бы вы выложить вариант с 3 массивами, т.е. если столбец не по порядку идет а произвольные цифры
Ответить с цитированием
  #6 (permalink)  
Старый 14.02.2013, 09:58
Новичок на форуме
Отправить личное сообщение для sinyakov Посмотреть профиль Найти все сообщения от sinyakov
 
Регистрация: 13.02.2013
Сообщений: 6

<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<!--
<link rel="stylesheet" type="text/css" href="tmp.css" />
-->
<style type="text/css">
</style>
<script type="text/javascript">
var base = [15,100,200,300,400,500,600,700,800,1000];

var time = [1,2,5,6,7,];

var a = [
[130,115,104,89,83,75,75,69,67,63],
[167,140,125,103,93,85,79,77,75,69],
[200,167,160,118,105,95,87,84,81,75],
[234,192,183,132,120,100,95,91,89,79],
[267,218,206,146,139,110,101,98,95,85],
[300,244,230,160,150,120,108,105,101,92]
];
$(document).ready(function (){


(function (){



var o=$('#s1');
var i;
o.append('<option value=""></option>')
for (i=0; i<time.length; i++) {
o.append('<option value="'+i+'">'+time[i]+'</option>')
};



o=$('#s2')
o.append('<option value=""></option>')
for (i=0; i<base.length; i++) {
o.append('<option value="'+i+'">От '+base[i]+'</option>')
};


})();


$('select').change(function (){
var s1=$('#s1').val();
var s2=$('#s2').val();
if (s1==''||s2=='') return;
$('#itg').text(a[s1][s2]);
});
});
</script>
</head>
<body>
<select id='s1'></select>
<select id='s2'></select>
<p>Итого: <span id='itg'></span></p>
</body>
</html>


Вроде работает
Ответить с цитированием
  #7 (permalink)  
Старый 14.02.2013, 10:01
Новичок на форуме
Отправить личное сообщение для sinyakov Посмотреть профиль Найти все сообщения от sinyakov
 
Регистрация: 13.02.2013
Сообщений: 6

А как сделать вместо цифр текст допустим в массиве base 15=Автомобиль, 100=автобус и т.д.
Ответить с цитированием
  #8 (permalink)  
Старый 14.02.2013, 10:58
Аватар для SleepWalker15
Интересующийся
Отправить личное сообщение для SleepWalker15 Посмотреть профиль Найти все сообщения от SleepWalker15
 
Регистрация: 23.01.2013
Сообщений: 14

Сообщение от ksa Посмотреть сообщение
Вроде как на картинке так...


На картинке уже 115!

Нипанятна.
Это мой косяк
Ответить с цитированием
  #9 (permalink)  
Старый 14.02.2013, 11:03
Аватар для SleepWalker15
Интересующийся
Отправить личное сообщение для SleepWalker15 Посмотреть профиль Найти все сообщения от SleepWalker15
 
Регистрация: 23.01.2013
Сообщений: 14

а как заменить вот эти цифры??
То есть редактировать атрибуты option в теге select
Изображения:
Тип файла: png Рабочий.png (4.6 Кб, 4 просмотров)

Последний раз редактировалось SleepWalker15, 14.02.2013 в 11:07.
Ответить с цитированием
  #10 (permalink)  
Старый 14.02.2013, 11:09
Новичок на форуме
Отправить личное сообщение для sinyakov Посмотреть профиль Найти все сообщения от sinyakov
 
Регистрация: 13.02.2013
Сообщений: 6

Да нашел решение

var time = ['Яблоко','Груша','Вишня','Слив а','Слива1','Слива2'];

Вместо цифр слова... Вроде работает...
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание скрипта для соединения с GSM терминалом matue Общие вопросы Javascript 4 25.01.2012 12:34
Создание скрипта "Итеррационные циклы" по формуле krasopetka Общие вопросы Javascript 0 17.11.2011 12:42
Создание с помощью скрипта html элемента Anastasiya Общие вопросы Javascript 4 25.10.2011 22:28
Нужно создание идентичного скрипта по диетам kuprum Работа 8 14.10.2011 19:03
Создание скрипта! Создание диктанта для учеников! Елизавета Работа 10 30.06.2010 21:00