2010-12-27 2 views
0

Ive получил список полов для выбора. По умолчанию установлено значение 'выберите'jQuery PHP select option

<select id="gender" > 
<option value="select" selected>Select:</option> 
<option value="1">Male</option> 
<option value="0">Female</option> 
</select> 

в JQuery:

$.post('register.php, { 
    telp: $("#telp").val(), 
    postcode: $("#postcode").val(), 
    gender: $("#gender option[value='select']").attr('selected','selected') 
}, ... 

в PHP

$gender = $_POST['gender']; 
if($gender == '') { 
    echo 'Please select gender'; 
} 

Я хочу либо 'Мужской' или тобе 'женщина' выбрано не значение по умолчанию. если выбран по умолчанию значение параметра «выбрать», он будет вторя ошибку .. «Пожалуйста, выберите пол»

+0

В следующий раз сообщите свой фактический код. Этот код (JS-часть) имеет синтаксические ошибки и не работает так, как есть. –

ответ

1

$("#gender option[value='select']").attr('selected','selected') это выбирает элемент option со значением select. И сделайте это выбранным вариантом. Поэтому всякий раз, когда этот код выполняется, значение по умолчанию будет выбрано автоматически.

Если вы хотите, чтобы текстовый код выбранного элемента, используйте $("#gender option:selected").text() или $("#gender option:selected").val(), чтобы получить значение (0 или 1). В вашем php-коде используйте этот код

$gender = $_POST['gender']; 
if($gender == 'select' || $gender = 'Select:') { 
    echo 'Please select gender'; 
} 

Еще лучше проверить правильное значение.

$gender = $_POST['gender']; 
if($gender != 'Male' && $gender != 'Female') { 
    echo 'Please select gender'; 
} 
if($gender != 1 && $gender != 0) { 
    echo 'Please select gender'; 
} 
+0

woohoo .. спасибо Mark. блестящий ++ – tonoslfx

1

$('#gender option:selected').val() даст вам значение выбранного параметра в вашем поле выбора.

0

Согласно тому, что вы в курсе, что вы всегда захватывая «отсутствующего» значение пола в раскрывающемся списке. Я верю, что вы ищете, как селектор, '#gender option:selected', который возьмет выбранную опцию.

Помните, что поле - это то, что будет отправлено на вашу страницу PHP. Я бы посоветовал проверить, все ли выпадающее меню установлено на selected (как .val()) и довести внимание пользователя до его отправки, чтобы они могли сделать реальный выбор.