[英]On click of the button my page reloads why
我寫了一個 JavaScript 代碼在我有日歷和一個按鈕,該代碼在 joget 之外正確運行。 在 joget 應用程序中,如果我單擊頁面重新加載的按鈕,如何停止重新加載頁面並在 joget 中單擊 function 時顯示我的實際值。
`$('#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 是我的按鈕的 function。 我單擊按鈕,它在刷新頁面的同時顯示內容,在 joget 中重新加載頁面。 雖然它在 Visual Studio 中正常工作。 你能幫我解決這個問題嗎
您可以添加代碼嗎:當href
為空時會發生這種情況。 將其更改為href:"#"
。
否則,請添加您的代碼片段。
更新問題后,您可以做什么。
方式一:
`$('#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= ""
我認為您必須防止 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>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.