Как отключить текстовые поля в переключателе с помощью Javascript

0

Моя функция

  • Если я выберу первый (второй или последний) вариант, опция останова будет отключена и сброшена как null, и все значения в выбранном параметре будут включены в качестве моего Javascript ниже.
  • Более того, я хотел бы отключить текстовые поля как левую сторону ниже всякий раз, когда выбран вариант taxi.

Изображение 174551


Demo

HTML:

<table>
<tr>
    <td>
        <input type="radio" name="vehicle" value="company_vehicle" />Company Vehicle</td>
</tr>
<tr class="set_width" id="company_vehicle">
    <td>
        <input type="text" />
    </td>
    <td>
        <input type="checkbox" />Company Vehicle</td>
</tr>
<tr>
    <td>
        <input type="radio" name="vehicle" value="hiring_vehicle" />Hiring Vehicle</td>
</tr>
<tr class="set_width" id="hiring_vehicle">
    <td>
        <input type="text" />
    </td>
    <td>
        <input type="radio" name="abc" value="car" />Car</td>
    <td>
        <input type="radio" name="abc" value="bus" />Bus</td>
</tr>
<tr>
    <td>
        <input type="radio" name="vehicle" value="taxi" />Taxi</td>
</tr>
<tr class="set_width" id="taxi">
<td>
        <input type="checkbox" />Taxi</td>
</tr>
</table>

Javascript:

var rbt_vehicle = $("input[name=vehicle]");

$(rbt_vehicle).on('change', function (e) {
var valueSelected = this.value;

$('#' + valueSelected).find(':text').prop('disabled', false).val('').removeClass('readonly').closest('tr').siblings('tr.set_width').find(':text').prop('disabled', true).addClass('readonly');
$('#' + valueSelected).find(':checkbox,:radio').prop('disabled', false).closest('tr').siblings('tr.set_width').find(':checkbox,:radio').prop('disabled', true);
});
Теги:

2 ответа

1
Лучший ответ

Используя текущую функцию, вы можете фактически удалить много текущего кода и просто сделать следующее:

var rbt_vehicle = $("input[name=vehicle]");

$(rbt_vehicle).on('change', function (e) {
    var valueSelected = this.value;

    // your other code here ...

    $('input[type="text"]').prop('disabled', valueSelected === 'taxi');

});

DEMO

  • 0
    Я отредактировал свою ветку и хотел бы сохранить свой текущий код JS, а затем добавлять код «отключенное текстовое поле» всякий раз, когда выбрано taxi ...
  • 1
    @ PMay1903 хорошо в этом случае, просто добавьте следующую строку в существующую функцию: $('input[type="text"]').prop('disabled', valueSelected === 'taxi'); и это должно сделать это
Показать ещё 3 комментария
2

сделайте вот так:

$('input.rdo').click(function(){
if(this.id == 'rdoTaxi')
{
    $('.textbox').prop('disabled',true);
}
    else
    {
        $('.textbox').prop('disabled',false);
    }

});

Fiddle DEMO

  • 0
    Спасибо за ваш код, но я хотел бы добавить их в свою текущую функцию с Javascript ...
  • 1
    Вы сделали эту простую задачу очень сложной, поэтому я упростил ее ..
Показать ещё 4 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню