Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 多步骤表单-字段由jquery填充的奇怪行为_Javascript_Jquery - Fatal编程技术网

Javascript 多步骤表单-字段由jquery填充的奇怪行为

Javascript 多步骤表单-字段由jquery填充的奇怪行为,javascript,jquery,Javascript,Jquery,当一个值小于4时,我对填充输入字段的脚本有问题。当值小于4时,脚本填充字段将被选中,但该值未被选中,因此,当我进入下一步时,该字段中没有值。当该值大于4时,一切正常,该值也由jquery填充 这是我的代码: function compute() { if( parseInt($("#finish_day").val()) < 4 ) { $('#return_car').children('#return_car option[value=' + $

当一个值小于4时,我对填充输入字段的脚本有问题。当值小于4时,脚本填充字段将被选中,但该值未被选中,因此,当我进入下一步时,该字段中没有值。当该值大于4时,一切正常,该值也由jquery填充

这是我的代码:

function compute() {
      if( parseInt($("#finish_day").val()) < 4 ) {  
            $('#return_car').children('#return_car option[value=' + $('#get_car').val() + ']').attr('selected', true).siblings().attr('disabled', true);

            if ($('#return_car').val()) $('#return_car').change();
        }
        else {
            $('#get_car > option, #return_car > option').prop('disabled', false);
            $('#three_day').hide(2000, function () {
                $(this).remove();
            });
        }

    }
$('select#get_car').change(compute);
$('input#finish_day').change(compute);
HTML代码:

<form>    
<fieldset>    
<div class="type-select">   
    <label for="get_car">Miasto wynajmu: *</label>
    <select id="get_car" name="rent-a-car-next[get_car]" class="select">
        <option value="">---</option>
        <option value="Katowice">Katowice</option>
        <option value="Kraków">Kraków</option>
        <option value="Warszawa">Warszawa</option>
        <option value="Wrocław">Wrocław</option>
        <option value="Gdańsk">Gdańsk</option>
    </select>   
</div>

<div class="type-select">   
    <label for="return_car">Miasto zwrotu: </label>
    <select id="return_car" name="rent-a-car-next[return_car]" class="select">
        <option value="">---</option>
        <option value="Katowice">Katowice</option>
        <option value="Kraków">Kraków</option>
        <option value="Warszawa">Warszawa</option>
        <option value="Wrocław">Wrocław</option>
        <option value="Gdańsk">Gdańsk</option>
    </select>   
</div>

<div class="type-text">
  <label for="finish_day">Ilość dni wynajmu: </label>
  <input type="text" size="20" id="finish_day" name="rent-a-car-next[finish_day]" value="" readonly="readonly" />
</div>

<div class="type-button">
  <input type="submit" name="rent-a-car-next[step-2-next]" class="button submit" value="Kolejny krok" />
</div>

</fieldset>
</form>
问题在哪里?感谢您的帮助

问题已解决:

$('#return_car').children('option[value=' + $('#get_car').val() + ']').prop('disabled', false).attr('selected', true).siblings().prop('disabled', true);

“问候”

最好创建一个小提琴来展示您的问题。好的,这是小提琴:尝试从传递给.children的选择器的开始处移除return_car。请注意,并不是所有浏览器都支持禁用select元素中的单个选项。不幸的是,没有更改-仍然是相同的问题也许我不理解这个问题,但它似乎在这里起作用:虽然您的演示没有包括下一步,所以。。。