For running J!5.1 you must https://fabrikar.com/forums/index.php?wiki/update-from-github/ or include the new file manually https://fabrikar.com/forums/index.php?threads/joomla-5-1-and-fabrik-cannot-find-files-error.54473/post-285151 See also Announcements
Please see our announcement here.
<div id="fooDiv">
<label for="foo">Leave this field blank</label>
<input type="text" name="foo" id="foo">
</div>
<script>
(function () {
var e = document.getElementById("fooDiv");
e.parentNode.removeChild(e);
})();
</script>
return empty($data);
var container = this.findClassUp('fabrikElementContainer');
container.parentNode.removeChild(container);
You could try adding a simple field, and a PHP validation of ...
PHP:return empty($data);
... and a JS event on the element, running onLoad, with this code:
Code:var container = this.findClassUp('fabrikElementContainer'); container.parentNode.removeChild(container);
I tested that code, and it works, and removes the entire element container from the DOM.
Whether this will work as adevrtized, and bots will still see it and fill it in, I don't know. But worth a go.
Do let me know. This might be an interesting element type to add, something like "honeypot", which has this functionality built in, no need to add code or validations. It would also be nice to have a 'honeypot' validation failure do so "silently", with no feedback, and acting as if the form had submitted.
-- hugh
jQuery(this.element).closest('.fabrikElementContainer').remove();