对不起那个愚蠢的问题.如何在javascript switch-case语言元素中使用case的条件?如下例所示,当变量liCount
<= 5且> 0 时,情况应匹配; 但是,我的代码不起作用:
switch (liCount) {
case 0:
setLayoutState('start');
var api = $('#UploadList').data('jsp');
api.reinitialise();
break;
case (liCount<=5 && liCount>0):
setLayoutState('upload1Row');
var api = $('#UploadList').data('jsp');
api.reinitialise();
break;
case (liCount<=10 && liCount>5):
setLayoutState('upload2Rows');
var api = $('#UploadList').data('jsp');
api.reinitialise();
break;
case (liCount>10):
var api = $('#UploadList').data('jsp');
api.reinitialise();
break;
}
Run Code Online (Sandbox Code Playgroud)
谢谢你的建议!
我不确定这个有效的C#,但希望你能得到这个想法.:)
switch (msg.GetType()) {
case ClassA:
// blah
case ClassB:
// blah 2
case ClassC:
// blah 3
}
Run Code Online (Sandbox Code Playgroud)
我如何使用VB.NET打开对象的类型Select Case
?
我知道有些人可能会建议使用多态,但我使用的是小型消息类的层次结构,所以在我的情况下真的不行.
我有一个查询,其中包括名为openingbalance和佣金的字段.我想基于opensbalance来计算佣金的值,类似于Access VBA中的这个块:Select Case
Select Case OpeningBalance
Case 0 To 5000
commission = 20
Case 5001 To 10000
commission = 30
Case 10001 To 20000
commission = 40
Case Else
commission = 50
End Select
Run Code Online (Sandbox Code Playgroud)
但由于Access不允许Select Case
查询,我如何在Access SQL中实现我的目标?
无论如何我可以构建一个使用Contains函数的Select语句吗?像这样:
Select commentStr
Case commentStr.Contains("10")
Case commentStr.Contains("15")
Run Code Online (Sandbox Code Playgroud) 以下是关于退出选择的几个问题......
break;
?例1
Select case Name
case "Mary"
'...
case "John"
'...
case else
end select
Run Code Online (Sandbox Code Playgroud)
例2
Select case Name
case "Mary"
'...
exit select
case "John"
'...
exit select
case else
end select
Run Code Online (Sandbox Code Playgroud) 我正在处理一个宏,它接受当前值ActiveCell
并根据选择的情况更改该值.
但是,我无法确定是否ActiveCell
包含通配符字符串.我不确定我的语法是否正确.如何让我的选择案例进行比较?
Select Case ActiveCell.Value
Case ActiveCell.Value Like "*string*"
ActiveCell.Value = "contains string"
End Select
Run Code Online (Sandbox Code Playgroud) 我试过以下:
Select Case Combo1.SelectedItem Or Combo2.SelectedItem
Run Code Online (Sandbox Code Playgroud)
但我得到错误:
Conversion from String "string here" to type 'Long' is not valid
Run Code Online (Sandbox Code Playgroud)
是否可以有多个选择案例?
我想知道是否有办法直接将整数DayOfWeek
返回转换为表示星期一,星期二等日期的字符串.
示例代码:
MessageBox.Show(Date.Today.DayOfWeek)
Run Code Online (Sandbox Code Playgroud)
这将返回6
(截至今天).有没有办法直接将其转换成Saturday
例如?我真的不关心它真正转化为什么,但我想取消我的Select Case:
Select Case Date.Today.DayOfWeek
Case 0
day = "Sunday"
Case 1
day = "Monday"
Case 2
day = "Tuesday"
Case 3
day = "Wednesday"
Case 4
day = "Thursday"
Case 5
day = "Friday"
Case 6
day = "Saturday"
Case Else
day = "Apocalypse: we're all boned."
End Select
Run Code Online (Sandbox Code Playgroud)
谢谢 :)
我最近从VB切换到C#.我注意到的一件事是,在C#中,我在使用比较作为案例的一部分时遇到了问题.我不确定如何用文字解释它,所以这里是我想要做的一个例子.
在VB中,我的代码看起来像这样,并且工作得很好.
Select Case ExamScore
Case Is >= 90
Grade = "A"
Case Is >= 80
Grade = "B"
Case Is >= 70
Grade = "C"
Case Is >= 60
Grade = "D"
Case Else
Grade = "F"
End Select
Run Code Online (Sandbox Code Playgroud)
另一方面,在C#中,Visual Studio告诉我"> ="是一个无效的表达式.
switch (examScore)
{
case >= 90: grade = "A"; break;
case >= 80: grade = "B"; break;
case >= 70: grade = "C"; break;
case >= 60; grade = "D"; break;
default: grade = "F"; break;
} …
Run Code Online (Sandbox Code Playgroud) 我正在尝试创建一系列可以获取参数的命令.拿起我正在使用Select Case
的每个单独的命令这个问题是如果我使用的话,我无法感知'参数'(字符串的第二部分)Case Else
.如果我不使用Case Else
那么我无法处理不正确的命令并将它们发送到所需的程序.
例如:
Private Sub AllocateType(ByVal Command As String)
Select Case Command
Case "Eat"
'Call Eat procedure
Case "Use"
'Call Use procedure
Case "Quit"
Case "Pause"
Case "Go"
Case Else
Errors() 'Error handling procedure
End Select
End Sub
Run Code Online (Sandbox Code Playgroud)
如果命令是'Brrrrr',它会调用Errors()
.然而,如果命令是"吃食物",它仍会调用Errors()
而不是将参数传递给Eat
程序.
编辑,因为它现在不起作用.
我已经尝试了所建议的内容,但我仍然有完全相同的问题.它似乎兼而有之Command.StartsWith
,Command.Contains
因为如果我尝试进入'吃食物',它仍然不会认为它是一个案例.
例:
Select Case Command
Case Command.Contains("Eat")
Output("TESTING")
If Len(Command) > 4 Then
Command = Mid(Command, 4, (Len(Command) - 4))
Interaction(Command)
Else …
Run Code Online (Sandbox Code Playgroud)