Javascript 是 运行 如果和否则如果
Javascript is running if and else if
我在我正在创建的应用程序中使用 telerik,并且我有一个 javascript on.click
方法,当在 telerik:RadContextMenu
.[=20= 中单击项目时运行该方法]
<telerik:RadContextMenu ID="tkDocumentList" runat="server" OnClientItemClicking="DocumentListOnClientItemClicking">
<Items>
<telerik:RadMenuItem Text="Edit Document" />
<telerik:RadMenuItem Text="Delete Document" />
<telerik:RadMenuItem Text="Upload Document" />
<telerik:RadMenuItem Text="Download Document" />
<telerik:RadMenuItem IsSeparator="True" />
</Items>
</telerik:RadContextMenu>
该函数确定检查了哪个项目,然后执行一些逻辑。
function DocumentListOnClientItemClicking(sender, args) {
var index = args.get_item().get_index();
if (index == 0) {
console.log('Toggle in edit');
$('.documentdetails>.modalContent').toggleClass('show');
$('.showedit').val("true");
}
else if (index == 1) {
var result = confirm("Are you sure you want to delete this item?");
args.set_cancel(!result);
sender.hide();
}
else if (index == 2) {
console.log('Toggle in upload');
$('.documentdetails>.modalContent').toggleClass('show');
}
}
我的问题是,当索引为 0 时,它进入 if 和 else if,我将尝试解释我的问题。假设function DocumentListOnClientItemClicking(sender, args) {
是line:0
,最后的结局}
是line: 16
。以下是此方法的执行方式:
- 1(索引为 0)
- 2
- 3
- 4
- 5
- 6
- 7(索引不是1)
- 11
- 12(索引不是 2,但是它运行 else if 的一部分)
- 14(未命中控制台日志并在此行中断)
有谁知道为什么会这样?
这并没有完全解决我的问题,但 telerik 上下文菜单位于更新面板中,单击其中一项可将页面发回。阻止这些回发解决了这个问题,但在我的特定应用程序中导致了其他问题。我不知道为什么这会导致问题,但这是我能想到的最好的办法。
我在我正在创建的应用程序中使用 telerik,并且我有一个 javascript on.click
方法,当在 telerik:RadContextMenu
.[=20= 中单击项目时运行该方法]
<telerik:RadContextMenu ID="tkDocumentList" runat="server" OnClientItemClicking="DocumentListOnClientItemClicking">
<Items>
<telerik:RadMenuItem Text="Edit Document" />
<telerik:RadMenuItem Text="Delete Document" />
<telerik:RadMenuItem Text="Upload Document" />
<telerik:RadMenuItem Text="Download Document" />
<telerik:RadMenuItem IsSeparator="True" />
</Items>
</telerik:RadContextMenu>
该函数确定检查了哪个项目,然后执行一些逻辑。
function DocumentListOnClientItemClicking(sender, args) {
var index = args.get_item().get_index();
if (index == 0) {
console.log('Toggle in edit');
$('.documentdetails>.modalContent').toggleClass('show');
$('.showedit').val("true");
}
else if (index == 1) {
var result = confirm("Are you sure you want to delete this item?");
args.set_cancel(!result);
sender.hide();
}
else if (index == 2) {
console.log('Toggle in upload');
$('.documentdetails>.modalContent').toggleClass('show');
}
}
我的问题是,当索引为 0 时,它进入 if 和 else if,我将尝试解释我的问题。假设function DocumentListOnClientItemClicking(sender, args) {
是line:0
,最后的结局}
是line: 16
。以下是此方法的执行方式:
- 1(索引为 0)
- 2
- 3
- 4
- 5
- 6
- 7(索引不是1)
- 11
- 12(索引不是 2,但是它运行 else if 的一部分)
- 14(未命中控制台日志并在此行中断)
有谁知道为什么会这样?
这并没有完全解决我的问题,但 telerik 上下文菜单位于更新面板中,单击其中一项可将页面发回。阻止这些回发解决了这个问题,但在我的特定应用程序中导致了其他问题。我不知道为什么这会导致问题,但这是我能想到的最好的办法。