Ik heb een fout/probleem.
Ben bezig een formbuilder te maken omdat het gemakkelijk is in het CMS wat ik schrijf.
Hier de link naar een werkend voorbeeld
NU heb ik een stukje werkend en een stukje niet.
1. Ik kan wel een fieldset genereren dmv een JavaScript functie maar daarna werkt het niet meer.
Ik DENK dat het probleem ligt bij het feit dat ik jquery dingen gebruik om bepaalde dingen uit te lezen die in de broncode helemaal nog niet bestaan maar jquery heeft ze namelijk net toegevoegd.
Graag jullie expertise hierover.
Javascript plaats ik hier, html plaats ik even voor het gemak in een pastbin linkje.
//<![CDATA[
function addFormField(groupname)
{
event.preventDefault();
var parent = $('#'+groupname);
var append = '#'+groupname+' #fields';
var i = $('#'+groupname+' #fields .fieldrow').size() + 1;
$('<!-- form row --> <div class="fieldrow" id="veld'+i+'"> <div class="row"> <div class="col-md-3"> <div class="form-group"> <label>Tekst bij veld</label> <input type="text" name="form_name" class="form-control"> </div> </div> <div class="col-md-3"> <div class="form-group"> <label>Veldnaam</label> <input type="text" name="form_name" class="form-control"> </div> </div> <div class="col-md-2"> <div class="form-group"> <label>Type veld</label> <select name="field_type" class="selectpicker"> <option value="text">Tekst</option> <option value="textarea">Textgebied</option> <option value="dropdown">Keuzevelden</option> <option value="radio">Radiobuttons</option> <option value="checkbox">Checkbox</option> <option value="file">Bestand</option> <option value="date">Datum</option> </select> </div> </div> <div class="col-md-2"> <div class="form-group"> <label>Veld verplicht?</label> <select name="required" class="selectpicker btn-small"> <option value="0">Nee</option> <option value="1">Ja</option> </select> </div> </div> <div class="col-md-2"> <a href="#" onclick="removeFormField("veld'+i+'", "'+groupname+'");" class="btn round-none btn-danger pull-right deletefield">verwijder veld</a> </div> </div> <div class="row"> <div class="col-md-4"> <div class="form-group"> <label>Waardes</label> <input type="text" id="valuesfield" name="values" placeholder="Waardes scheiden met een ;" class="form-control"> </div> </div> <div class="col-md-3"> <div class="form-group"> <label>Validatie</label> <select name="validation" class="selectpicker"> <option value="none">Geen</option> <option value="int">Cijfers</option> <option value="email">E-mail</option> </select> </div> </div> </div> </div> <!-- form row -->').appendTo(append);
$('.selectpicker').selectpicker();
return false;
};
function removeFormField(fieldname, groupname)
{
event.preventDefault();
var parent = $('#'+fieldname);
var i = $('#'+groupname+' .fieldrow').size();
$(parent).remove();
return false;
};
function removeFormGroup(groupname)
{
event.preventDefault();
var parent = $('#'+groupname);
console.log(groupname);
$(parent).remove();
return false;
};
function addFormGroup()
{
event.preventDefault();
var i = $('.formgroup').size() + 1;
$('<div class="widget widget-2 row formgroup" id="group'+i+'"> <div class="widget-head"><h4 class="heading">Formulier groep '+i+'</h4> <a onclick="removeFormGroup("group'+i+'");" class="btn round-none btn-danger pull-right">verwijder groep</a><a onclick="addFormField("group'+i+'");" class="btn round-none btn-success pull-right">veld toevoegen</a></div> <div class="widget-body" id="fields"></div></div>').appendTo('#forms');
addFormField('group'+i);
return false;
};
//]]>