【问题标题】:jQuery PHP select optionjQuery PHP 选择选项
【发布时间】:2011-05-31 04:31:21
【问题描述】:

我有可供选择的性别列表。默认选择是“选择”

<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';
}

我希望选择“男性”或“女性”而不是默认值。 如果选择默认选项值“选择”,它会回显错误..“请选择性别”

【问题讨论】:

  • 请在下次发布您的实际代码。此代码(JS 部分)存在语法错误,无法正常工作。

标签: jquery select option


【解决方案1】:

$("#gender option[value='select']").attr('selected','selected') 选择值为 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';
}

【讨论】:

    【解决方案2】:

    $( '#gender option:selected' ).val () 将在您的选择框中为您提供所选选项的值。

    【讨论】:

      【解决方案3】:

      根据您发布的内容,您总是抓住性别下拉菜单的“缺席”值。我相信您作为选择器正在寻找的是'#gender option:selected',它将获取选定的选项。

      请记住,value 字段将发送到您的 PHP 页面。我建议检查下拉菜单是否仍设置为selected(作为.val()),并在提交表单之前将用户的注意力带回它,以便他们做出实际选择。

      【讨论】:

        猜你喜欢
        • 2012-10-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-04-10
        • 2021-12-06
        • 1970-01-01
        • 1970-01-01
        • 2014-11-22
        相关资源
        最近更新 更多