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

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

Мой код здесь

<label class="control-label col-sm-3">Gender</label>
<div class="col-sm-9">
    <select class="form-control" id="gender" name="gender" onchange="changelabel()">
        <option value="">Gender</option>
        <option <?php if($res['gender']=='Female'){?> selected="selected" <?php } ?> value="Female">Female</option>
        <option <?php if($res['gender']=='Male'){?> selected="selected" <?php } ?> value="Male">Male</option>
    </select> 

    <!-- Other fields are -->
    <div class="row">
        <div class="col-md-4">
            <div class="form-group">
                <label class="control-label col-sm-3"><span id="prtttl">Wife Title</span></label>
                <div class="col-sm-9">
                    <select class="form-control" id="partnerTtl" name="partnerTtl">
                        <option value="">Select</option>
                        <option <?php if($res['partnerTtl']=='Smt'){?> selected="selected" <?php } ?> value="Smt">Smt</option>
                        <option <?php if($res['partnerTtl']=='Late'){?> selected="selected" <?php } ?> value="Late">Late</option>
                    </select>
                </div>
            </div>
        </div>

        <div class="col-md-4">
            <div class="form-group">
                <label class="control-label col-sm-3"><span id="prtnms">Wife Name</span> </label>
                <div class="col-sm-9">
                    <input type="text" name="hwname" value="<?php echo $res['partnerName'] ?>" placeholder="Husband/Wife Name" class="form-control">
                </div>
            </div>
        </div>

Когда пользователь выбирает мужчина, метка имени жены будет такой же, если пользователь выберет пол женский, изменение метки на имя мужа - это любой возможный способ сделать это с помощью javascript

Этот код - беспорядок, Иисус

Phiter 11.04.2018 13:15

Почему бы просто не использовать слово «супруга» для начала - и покончить с этим? Дополнительный бонус - который автоматически устраняет возможную проблему дискриминации (и, в зависимости от того, где именно она будет развернута, возможный судебный процесс, которому следует следовать), который вы в противном случае создавали бы здесь, исходя из довольно устаревшего предположения «брак = один мужчина + одна женщина" ...

CBroe 11.04.2018 13:22

@cbroe вот здесь!

Anthony 11.04.2018 13:25

@ Энтони слышишь, слышишь!

Prof. Falken 11.04.2018 13:29
0
4
659
4
Перейти к ответу Данный вопрос помечен как решенный

Ответы 4

попробуйте событие onchange, подобное этому

<script type="text/javascript">
        $(document).ready(function() {
            $('select').on('change', function() {
              data=this.value;
              if (data=='female') {
                $(".your class or Id").append('<span id="prtnms">Wife Name</span>');

              }
            })
        });
    </script>

Напишите свою JS-функцию, как показано ниже:

<script>
function changelabel(){
  if($("#gender").val() == 'Female')
  {
     $("#prtttl").html("Husband Title");
     $("#prtnms").html("Husband Name");
  }
  else
  {
     $("#prtttl").html("Wife Title");
     $("#prtnms").html("Wife Name");    
  }
}
</script>

Ты можешь сделать это:

function changelabel() {
   if ($('#gender').val()== 'Female') {
       $('#prtnms').text('Husband Name')
   else
       $('#prtnms').text('Wife Name');
}

Но поскольку вы отметили jQuery, вы можете сделать это вместо этого:

$("#gender").change(function() {
  if ($(this).val() == 'Female') {
       $('#prtnms').text('Husband Name')
   else
       $('#prtnms').text('Wife Name');
});

Обратите внимание: поскольку содержимое представляет собой просто текст, я использовал text() вместо html().

Ответ принят как подходящий

Попробуйте этот jquery

function changelabel()
    {
        if($("#gender").val() == 'Female')
        {
            $("#prtttl").text("Husband's Title");
            $("#prtnms").text("Husband's Name");
        }
        else
        {
           $("#prtttl").text("Wife's Title");           
           $("#prtnms").text("Wife's Name");
        }
    }

Отлично @madhukanttiwari, чтобы принять тот же ответ, но более поздний, а не более ранний

B. Desai 11.04.2018 13:44

Другие вопросы по теме