Презареждане на страницата с новата информация?

sentenello

Registered
Здравейте,
В момента имам страница която си извежда информацията която искам, но съм сложил 2 селекта като единия е "ot" а другия "do". Какво трябва да направя за да отива към saita.com/fail.php?ot=2&?do=1 при натискането на инпут submit-a ?
 
Най-обикновен html:

HTML:
<form action=fail.php method=GET>
Ot:
<select name=ot>
<option value=1>1</option>
<option value=2>2</option>
<option value=3>3</option>
</select>
Do:
<select name=do>
<option value=1>1</option>
<option value=2>2</option>
<option value=3>3</option>
</select>
<input type=submit value=давай />
</form>
 
Информацията я вземам точно така, но как да задам при натискането на субмита да отиде на друга страница (същата страница само че с ?ot=2&?do=2 , примерно)
 
sentenello каза:
Информацията я вземам точно така, но как да задам при натискането на субмита да отиде на друга страница (същата страница само че с ?ot=2&?do=2 , примерно)
Еми просто променяш action-атрибута. В твоя случай просто го оставяш празен, за да отиде на същата страница.
HTML:
<form action="" method=GET>
 
Успях да се оправя(защото беше лесно :) ) с начина на @anonimen, макар да знам че с POST е почти същото и ще стане.

Още един въпрос в темата.
При положение че вече съм взел стойности и съм на saita.com/?ot=2&do=1
как да задам на този <option> да е селектед.

П.С. Пример с по-горния линк, ако не сте ме разбрали.

Код:
<select name='ot' id='ot' >
				<option value='1.00'>1.00</option>
				<option value='1.05'>1.05</option>
				<option value='2' selected>2</option>
</select>
<select name='do' id='do' >
				<option value='1.00' selected>1.00</option>
				<option value='1.05'>1.05</option>
				<option value='2' >2</option>
</select>
 
sentenello каза:
Успях да се оправя(защото беше лесно :) ) с начина на @anonimen, макар да знам че с POST е почти същото и ще стане.

Още един въпрос в темата.
При положение че вече съм взел стойности и съм на saita.com/?ot=2&do=1
как да задам на този <option> да е селектед.

П.С. Пример с по-горния линк, ако не сте ме разбрали.

Код:
<select name='ot' id='ot' >
				<option value='1.00'>1.00</option>
				<option value='1.05'>1.05</option>
				<option value='2' selected>2</option>
</select>
<select name='do' id='do' >
				<option value='1.00' selected>1.00</option>
				<option value='1.05'>1.05</option>
				<option value='2' >2</option>
</select>
Просто с php гледаш какво е избрано и го записваш като селектнато:

[js]$('select[name=ot]').val(function(){
return <?=$_GET['ot']?>;
});[/js] + не забравяй за htmlspecialchars.
Това е варианта с jquery, за да не пишеш нещо такова:

Код:
<select name='ot' id='ot' >
				<option value='1.00' <?=($_GET['ot'] == 1.00) ? 'selected' : null?>>1.00</option>
				<option value='1.05' <?=($_GET['ot'] == 1.05) ? 'selected' : null?>>1.05</option>
				<option value='2'  <?=($_GET['ot'] == 2) ? 'selected' : null?>>2</option>
</select>
 
htmlspecialchars се ползваше при GET и POST ако не се лъжа нали ?
с този код
Код:
$('select[name=ot]').val(function(){
return <?=$_GET['ot']?>;
});
Разбирам кое е селектирано и с ретурна го извеждам, но как да го направя да променя php кода и да прави точно него <option> selected

EDIT: Общо взето искам когато се отвори saita.com/?ot=2&do=1 на option ot value-2 да е селектирано а съответно на do да е селектирано това с валуе 1. За да може когато се отвори примерно saita.com/?ot=50&do=180 селект менюто да е точно на тях и да се знае кое точно разглеждаш.
 
Да, с този код ще вземе $_GET['ot'] и от селекта ще избере стойността му. Ако не работи, пробвай така:

[js]$('option[value=<?=$_GET["ot"]?>]').attr('selected', true);[/js]
 
Този код си ми изкарва правилно избраната стойност във самия скрипт, а не променя хтмл-а. Явно ти не си ме разбрал какво точно целя. Иначе и двата ти кода работят. Ето какво точно се оптивам да направя.

Код:
$('select[name=ot]').val(function(){
....
});

Код:
<form action='?rangefrom=$ot&rangeto=$do&days=$dninapred' method='GET'>
<table class='odd'>
	<tr>
		<td>
			<select name='ot' id='ot' >
				<option value='1.00'>1.00</option>
				<option value='1.05'>1.05</option>

Когато избера 1.05, ми презарежда страницата и автоматично селектирано си е 1.00 тъй като е първо и нямам зададен селектед никъде. След като си избера точно какво искам от полетата си ми изкарва правилната информация след презареждането, но не знам какво трябва да вкарам в хтмл-а или js-to за да направи точно този option бутон на селектед.
 
Пробвах да сложа на няколко реда
Код:
<?=($_GET['ot'] == 1.00) ? 'selected' : null?>
и се получи, но не ми се иска да го правя по този начин. Някакви съвети къде, какво трябва да направя за да селектира с js-to
 
Код:
<form action='?rangefrom=$ot&rangeto=$do&days=$dninapred' method='GET'>
Това не трябва да е така. Тези get-ове сами ще се напишат като изпратиш формата, трябва да оставиш action-a празен - action=""

А за Js, пробва ли другия вариант?
[js]$('option[value=<?=$_GET["ot"]?>]').attr('selected', true);
[/js]
Това направи option-ите, които имат стойност тази в get-a, селектнати.

Ако и така не става, все пак провери в конзолата (ctrl+shift+J) за грешки. Също не забравяй да сложиш js-товете в
Код:
$(function(){
//here
})
и да инклуднеш библиотеката преди твоите файлове

Код:
<script src="jquery src"></script>
<script src="твоите файлове след това"></script>
 

Back
Горе