JavaScript追加中的动态数据循环
我正在尝试使用jQuery在视图中添加动态字段,它正在工作,我遇到的问题是通过jQuery在附加部分加载动态数据 这是我的密码: $document.readyfunction{ $add.clickfunction{ 变量loopsData=[ @foreach$attributes作为$attribute{ 值:“{{$attribute->id}}”, 文本:“{{$attribute->title}” } @除非$loop->last, @结束语 @endforeach ]; console.logloopsData; var lastField=$buildyourform div:last; var intId=lastField&&lastField.length&&lastField.dataidx+1 | | 1; var fieldWrapper=$; fieldWrapper.dataidx,intId; var fName=$Title; var fType=$ParentSelect+loopsData['text']+; var removeButton=$; removeButton.clickfunction{ $this.parent.remove; }; fieldWrapper.appendfName; fieldWrapper.appendfType; fieldWrapper.appendremoveButton; $buildyourform.appendfieldWrapper; }; }; 标题 父母亲 选择 @foreach$attributes作为$attribute {{$attribute->title} @endforeach 解决了的 这是我如何解决我的问题,感谢那些投票反对甚至没有试图帮助 首先,我在脚本中添加了以下代码:JavaScript追加中的动态数据循环,javascript,jquery,html,Javascript,Jquery,Html,我正在尝试使用jQuery在视图中添加动态字段,它正在工作,我遇到的问题是通过jQuery在附加部分加载动态数据 这是我的密码: $document.readyfunction{ $add.clickfunction{ 变量loopsData=[ @foreach$attributes作为$attribute{ 值:“{{$attribute->id}}”, 文本:“{{$attribute->title}” } @除非$loop->last, @结束语 @endforeach ]; cons
var loopsData = [
@foreach($attributes as $attribute)
{ value: '{{ $attribute->id }}', text: '{{ $attribute->title }}' }
@unless ($loop->last)
,
@endunless
@endforeach
];
var helpers = '';
$.each(loopsData, function(key, value) {
helpers += '<option value="'+value.value+'">'+value.text+'</option>';
});
以下是完整代码:
$(document).ready(function() {
$("#add").click(function() {
//my data from controller
var loopsData = [
@foreach($attributes as $attribute)
{ value: '{{ $attribute->id }}', text: '{{ $attribute->title }}' }
@unless ($loop->last)
,
@endunless
@endforeach
];
//looping my data in jQuery and return result as option html
var helpers = '';
$.each(loopsData, function(key, value) {
helpers += '<option value="'+value.value+'">'+value.text+'</option>';
// += will add new option to my select box for each one of my loop data
});
//add it to my code
var lastField = $("#buildyourform div:last");
var intId = (lastField && lastField.length && lastField.data("idx") + 1) || 1;
var fieldWrapper = $("<div class=\"col-md-4 mt-20\" id=\"field" + intId + "\"/>");
fieldWrapper.data("idx", intId);
var fName = $("<label for=\"title\">Title</label><input type=\"text\" name=\"title[]\" class=\"form-control\" />");
var fType = $("<label for=\"attribute_id\">Parent</label><select name=\"attribute_id[]\" id=\"attribute_id\" class=\"form-control\"><option value=\"\">Select</option>"+helpers+"</select>");
var removeButton = $("<button type=\"button\" class=\"btn btn-danger\"><i class=\"fa fa-minus\"></i></button>");
removeButton.click(function() {
$(this).parent().remove();
});
fieldWrapper.append(fName);
fieldWrapper.append(fType);
fieldWrapper.append(removeButton);
$("#buildyourform").append(fieldWrapper);
});
});
希望它对其他人有所帮助。您在这里没有展示完整的图片。这是什么符号,一些模板??就像foreach,除非。。。这是PHP/Laravel吗?是的,是Laravel,因为我的问题是关于js的,我跳过了这一部分
$(document).ready(function() {
$("#add").click(function() {
//my data from controller
var loopsData = [
@foreach($attributes as $attribute)
{ value: '{{ $attribute->id }}', text: '{{ $attribute->title }}' }
@unless ($loop->last)
,
@endunless
@endforeach
];
//looping my data in jQuery and return result as option html
var helpers = '';
$.each(loopsData, function(key, value) {
helpers += '<option value="'+value.value+'">'+value.text+'</option>';
// += will add new option to my select box for each one of my loop data
});
//add it to my code
var lastField = $("#buildyourform div:last");
var intId = (lastField && lastField.length && lastField.data("idx") + 1) || 1;
var fieldWrapper = $("<div class=\"col-md-4 mt-20\" id=\"field" + intId + "\"/>");
fieldWrapper.data("idx", intId);
var fName = $("<label for=\"title\">Title</label><input type=\"text\" name=\"title[]\" class=\"form-control\" />");
var fType = $("<label for=\"attribute_id\">Parent</label><select name=\"attribute_id[]\" id=\"attribute_id\" class=\"form-control\"><option value=\"\">Select</option>"+helpers+"</select>");
var removeButton = $("<button type=\"button\" class=\"btn btn-danger\"><i class=\"fa fa-minus\"></i></button>");
removeButton.click(function() {
$(this).parent().remove();
});
fieldWrapper.append(fName);
fieldWrapper.append(fType);
fieldWrapper.append(removeButton);
$("#buildyourform").append(fieldWrapper);
});
});