我有一个包含三个步骤的Jquery Steps表单。 我想在最后一步中禁用左右键,这样我就可以保持同样的步骤。
$(function() {
form_prop = $("#new_prop").show();
form_prop.steps({
headerTag: "h3",
bodyTag: "fieldset",
transitionEffect: "slideLeft",
onStepChanging: function(event, currentIndex, newIndex) {
if (currentIndex == 2) {
form_prop.on('keyDown', function(event) {
const key = event.key; // "ArrowRight", "ArrowLeft", "ArrowUp", or "ArrowDown"
if (key == "ArrowRight" || key == "ArrowLeft") {
// Disable Next and previous
}
});
}
}
});
});
答案 0 :(得分:2)
在jquery.steps.js中将enableKeyNavigation
设置为false
。
答案 1 :(得分:1)
从文档中我看到您可以从return false
事件中onStepChanging
取消更改。
所以
$(function() {
form_prop = $("#new_prop").show();
form_prop.steps({
headerTag: "h3",
bodyTag: "fieldset",
transitionEffect: "slideLeft",
onStepChanging: function(event, currentIndex, newIndex) {
if (currentIndex == 2) {
return false;
}
}
});
});
应该工作。
答案 2 :(得分:1)
首先请确保包含jquery.steps.js
。
如果包含jquery.steps.min.js
,请替换为jquery.steps.js
打开jquery.steps.js
文件,将enableKeyNavigation
更改为false
enter image description here
答案 3 :(得分:0)
我试试:
$(function() {
form_prop = $("#new_prop").show();
form_prop.steps({
headerTag: "h3",
bodyTag: "fieldset",
transitionEffect: "slideLeft",
onStepChanging: function(event, currentIndex, newIndex) {
if (currentIndex == 2) {
form_prop.on('keyDown', function(event) {
const key = event.key; // "ArrowRight", "ArrowLeft", "ArrowUp", or "ArrowDown"
if (key == "ArrowRight" || key == "ArrowLeft") {
event.preventDefault();// Disable Next and previous
}
});
}
}
});
});