【发布时间】:2020-07-04 00:12:30
【问题描述】:
在我的 laravel 项目中,我有颜色选择器输入字段,我想在其中自动保存数据库中的值。在本节中,我粘贴了运行正常的脚本。但问题是这是在间隔后继续保存值。但我想要什么? 当我单击输入字段时,事件将触发而不单击它不会继续。 所以请任何人都可以帮助我如何使用 onchange 事件。我已经粘贴了下面的代码,请检查一下并告诉我
<script>
$(document).ready(function(){
function autoSave()
{
var id =$("#hid").val();
var statscolor = $('#statscolor').val();
$.ajax({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
},
method:"put",
// url:"{{ route('companyStats.update', $auto->id) }}",
url:"colorstats/"+id,
data:{backgroundcolor:statscolor},
dataType:"text",
success:function(data)
{
console.log(data);
// $('#autoSave').fadeIn().text("color successfully updated");
// $('#autoSave').fadeOut(3000);
$('#autoSave').text('updatedsuccessfully');
// setInterval(function(){
// $('#autoSave').fadeOut();
// }, 5000);
/*setTimeout(function() {
// $('#autoSave').fadeOut("slow");
$('#autoSave').fadeIn().text("color successfully updated");
}, 5000 ); */
}
});
}
setInterval(function(){
autoSave();
}, 5000);
});
</script>
这是刀片输入字段
<div class="form-group">
<label for="statscolor">Background Color</label>
<input type="hidden" id="hid" value="{{$auto->id}}" name="hid">
<input class="jscolor float-right" name="backgroundcolor" id="statscolor" value="{{$auto->backgroundcolor}}" autocomplete="off" style="background-image: none; background-color: rgb(0, 142, 255); color: rgb(255, 255, 255);" onChange="autoSave()">
<small id="autoSave"></small>
</div>
【问题讨论】:
-
你不太清楚你需要什么。您是否需要在单击按钮时触发输入,还是应该在输入输入后执行该函数?
-
函数在输入后执行。
标签: jquery html ajax laravel eloquent