繁体   English   中英

jQuery val()在输入字段中输入正确的数字,但标签仍未显示任何值

[英]jQuery val() puts correct number in input field but tags still show no value

我试图让jQuery根据订单表单上的输入字段更新字段。 我使用jQuery的val()来设置值,但是当我尝试使用Laravel 4的Validator ::验证订单表单时:该字段为空。 当我检查该字段时,我发现尽管在输入字段中输入了正确的数字,但实际上没有任何值分配给该字段。 如何使用jQuery的val()设置一个值,Laravel 4的Validator ::将能够看到并识别为合法输入? 如果有人能解释我哪里出了问题或向我展示如何正确执行此操作,将不胜感激! 非常感谢!

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

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

如果用户单击“ AddPage”按钮,则这是更新页面数的最后一部分:

/*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

以及控制器的相关部分:

$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',
               )            
);

尽管我对该问题有些困惑,但是您可以使用attr在源代码中设置属性:

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

因此,您可以看到源代码中的更改, val()在内存中设置了属性。

更新:

另外,请确保使用Form::open()打开Form::open() ,并且text字段位于表单内部,如下所示:

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM