我已经在日历中写了一个JavaScript代码,并在joget外部正确运行了一个按钮。在joget应用程序中,如果单击按钮将重新加载页面,如何停止页面的重新加载并在joget中显示实际的单击功能。
`$('#getBetween').click(function () {
var start = $("#date_picker1").datepicker("getDate"),
end = $("#date_picker2").datepicker("getDate"),
currentDate = new Date(start),
between = []
;
while (currentDate <= end) {
between.push(new Date(currentDate));
currentDate.setDate(currentDate.getDate() + 1);
}
$(document).ready(function () {
$("#results").html(between.map(function (value) {
return $('#results:last').after('<div class="block">' + value + '<button class="remove">x</button></div>')
}));
$('.remove').click(function () {
$(this).parent().remove();
console.log(between)
})
});
});
`
getbetween是我按钮的功能。我单击按钮,它会在刷新页面,在joget中重新加载页面的同时显示内容。同时在Visual Studio中正常工作。您能帮我吗
答案 0 :(得分:0)
您可以添加代码吗:href
为空时会发生这种情况。将其更改为href:"#"
。
否则,请添加您的代码段。
更新问题后,您可以做什么。
方法1:
`$('#getBetween').click(function () {
var start = $("#date_picker1").datepicker("getDate"),
end = $("#date_picker2").datepicker("getDate"),
currentDate = new Date(start),
between = []
;
while (currentDate <= end) {
between.push(new Date(currentDate));
currentDate.setDate(currentDate.getDate() + 1);
}
$(document).ready(function () {
$("#results").html(between.map(function (value) {
return $('#results:last').after('<div class="block">' + value + '<button class="remove">x</button></div>')
}));
$('.remove').click(function (e) {
e.preventDefault()
$(this).parent().remove();
console.log(between)
})
});
});
只需添加preventdefault()
或方法2不确定,但是您可以在按钮上添加onClick= ""
答案 1 :(得分:0)
我认为您必须阻止JS代码的默认行为。
例如:
<form id="my-form">
<!-- Your fields -->
<input type="text">
<button type="submit">Submit</button>
</form>
<script>
var myForm = document.querySelector("#my-form")
myForm.addEventListener('submit', (event)=> {
event.preventDefault()
// Do another stuffs after it
})
</script>