I am creating a sample form using Office UI Fabric components, I can see button component rendered but when I click on the button I get page posted back.
I have a simple html button as well but that works fine. Why post back happening with Fabric button only?
here is my code, I have added a content editor web part on my page and added this script init it. I have tried with visual web par as well but same result.
<link rel="stylesheet"
href="https://static2.sharepointonline.com/files/fabric/office-ui-fabric-
js/1.4.0/css/fabric.min.css" />
<link rel="stylesheet"
href="https://static2.sharepointonline.com/files/fabric/office-ui-fabric-
js/1.4.0/css/fabric.components.min.css" />
<script src="https://static2.sharepointonline.com/files/fabric/office-ui-
fabric-js/1.4.0/js/fabric.min.js"></script>
<button class="ms-Button ms-Button--primary AlertExample">
<span class="ms-Button-label">Create Account</span>
</button>
<input type="button" name="name" value="HTML button" onclick="htmlclcik()" />
<script type="text/javascript">
var ButtonComponent = document.querySelector(".ms-Button.AlertExample");
new fabric["Button"](ButtonComponent, function () {
alert("You clicked the Create Account button");
return false;
});
function htmlclcik()
{
alert("htmk click");
}
</script>
Update : This script is required to control this behavior.
var buttons = document.getElementsByTagName('button');
if (buttons && buttons.length) {
for (let i = 0; i < buttons.length; i++) {
if (buttons[i]) {
buttons[i].onclick = function () { return false; };
}
}
}