【发布时间】:2018-02-23 07:41:57
【问题描述】:
我有一个表单,当下面给出窗口加载代码时,我有 4 个字段全部被禁用:
<form action="user" method="post">
{{csrf_field()}}
<input type="text" class="hide first" value="{{$data->name}}" name="name" id="name">
<input type="text" class="hide second" value="{{$data->age}}" name="age" id="age">
<input type="text" class="hide third" value="{{$data->city}}" name="city" id="city">
<input type="text" class="hide fourth" value="{{$data->class}}" name="class" id="class">
<input type="text" class="hide first" value="{{$data->lname}}" name="lastname" id="name">
</form>
从表格中获取结果的脚本:
<script type="text/javascript">
$(document).ready(function() {
$('.hide').attr('disabled', true);
$.ajax({
url: "/getdata",
type: "POST",
dataType: "json",
data: {
"_token": "{{ csrf_token() }}"
},
success: function(data) {
$('#upd').click(function() {
$.each(data, function(i, val) {
var getdata = val.split(",");
$('.' + getdata).attr('disabled', false);
$('.' + getdata).css('background-color', 'white');
$('.' + getdata).attr("style", "background-color:white!important");
})
})
}
});
})
</script>
获取数据的ajax url:
function getdata(Request $request) {
$data = DB::table('demo') - > first();
$result = array_keys((array) $data, 1);
return response() - > json($result);
}
json 回复:[ " first "," second "]
控制器函数,我将从那里更新我的记录:
function save_record(Request $request) {
echo "<pre>";
print_r($request - > all());
exit;
}
在所有代码中,我可以禁用我从函数中收到的所有字段,当我编辑文本值并提交表单时,它只显示我的 jquery 中未禁用的字段.
我的问题是,当任何人从检查中删除禁用属性并在这种情况下更新字段时,提交的表单也会更改值,但我不想要它..
那么我如何更新我从帖子而不是从检查 chnage 收到的那些值..我怎样才能防止检查更改表单有人可以帮我解决这个问题
【问题讨论】:
-
使用两个 Laravel 版本?
-
是的,使用 laravel 5.2 版
-
恕我直言,确保您的用户不会篡改您的输入属性的最简单方法是首先不显示它们
-
如果这个问题只是关于禁用检查工具,你不能。
-
没有关于我正在获取哪些字段,只有那些值可以更新
标签: php jquery laravel laravel-5.2