【问题标题】:jQuery val() puts correct number in input field but tags still show no valuejQuery val() 在输入字段中输入正确的数字,但标签仍然没有显示任何值
【发布时间】:2014-05-05 15:45:25
【问题描述】:

我正在尝试让 jQuery 根据订单表单上的输入字段更新字段。我使用 jQuery 的 val() 来设置值,但是当我尝试使用 Laravel 4 的 Validator:: 验证订单时,它说该字段为空。当我检查该字段时,我看到尽管输入字段中有正确的数字,但仍然没有实际分配给该字段的值。如何使用 jQuery 的 val() 设置 Laravel 4 的 Validator:: 将能够看到并识别为合法输入的值?如果有人能解释我哪里出错或告诉我如何正确地做到这一点,将不胜感激!非常感谢!

这里是相关的 jQ snip,当页面加载时 num = 1 因为总会有至少 1 个页面:

var num = 1;
$('#number_of_pages').val(num);

如果用户单击 AddPage 按钮,这里是 sn-p 更新页数的最后一位:

/*Update number of pages*/
var updated_number_of_pages = $('.inputPage').length;
$('#number_of_pages').val(updated_number_of_pages);

当他们点击 DeletePage 按钮时:

/*Updated Number of pages*/
var updated_number = $('.inputPage').length;
$('#number_of_pages').val(updated_pages);

这是视图:

{{ Form::text('number_of_pages', null, array('id' => 'number_of_pages')) }}
    @if($errors->has('number_of_pages'))
        {{ $errors->first('number_of_pages') }}
    @endif

以及Controller的相关部分:

$validator = Validator::make(Input::all(),
               array(
                'order_name'      => 'required',
                'phone'           => 'required|min:10|numeric',
                'email'           => 'required',
                'st_address'      => 'required',
                'post_date'       => 'required',
                'number_of_pages' => 'required',
               )            
);

【问题讨论】:

    标签: javascript jquery forms laravel-4


    【解决方案1】:

    虽然我对这个问题有点困惑,但您可以使用attr 在源中设置属性:

    $('#number_of_pages').attr('value', updated_number_of_pages);
    

    所以,你可以看到源中的变化,val() 设置了内存中的属性。

    更新:

    还要确保您的表单是使用Form::open() 打开的,并且text 字段位于表单内部,如下所示:

    {{ Form::open(...) }}
        {{ Form::input('number_of_pages') }}
        {{-- Rest of the code --}}
    {{ Form::close() }}
    

    【讨论】:

    • 当您提交表单时,请尝试检查dd(Input::all()) 的输入,并确保该字段可用且具有值,请尝试同时使用attrval
    • 你确定吗?确保您没有刷新旧提交,尝试从头开始提交,因为它应该在那里。
    • 据我所知 :(
    • 如果您不使用jQuery 做任何事情并直接提交其中包含一些值怎么办。
    • 如果你想把它作为答案,我很乐意接受。
    猜你喜欢
    • 1970-01-01
    • 2020-08-19
    • 2017-01-09
    • 2019-02-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多