2014-05-18 2 views
-1

작은 AppleScript로 도움이 필요합니다.AppleScript (목록 선택)

내가 목록에서 선택하면. Safari는 항상 test3을 엽니 다. 어쩌면 누군가 나를 도울 수 있습니까?

코드 A는 "목록에서 선택"대화 상자가 목록에서

set choice to choose from list {"1", "2", "3"} 

if choice is "1" then 
     tell application "Safari" to open location "http://test1/" 


else if choice is "2" then 
     tell application "Safari" to open location "http://test2/" 

else 
     tell application "Safari" to open location "http://test3/" 
end if 
+0

당신은 무슨 일이 일어날 지 말하지 않았습니다. – DBedrenko

+0

S/그는 사파리가 항상 test3을 열지는 않지만 때때로 test1 또는 test2를 열 것이라고 예상합니다. AppleScript를 알고 있다면 분명합니다. 더 자세한 설명이 필요없고 투표 할 필요가 없습니다. – Mark

답변

1

결과입니다. 목록에 1 개의 항목 만있는 경우에도 여전히 목록입니다. 따라서 실제 결과를 얻으려면 목록에서 "항목 1"을 실제로 원합니다.

set choice to item 1 of (choose from list {"1", "2", "3"}) 
+0

빠른 도움에 감사드립니다. – user3649750

+0

질문이 해결 된 경우 제 답변을 표시하고 (확인하십시오) 다른 사람들이 해결책을 찾았 음을 알기 바랍니다. 행운을 빕니다. – regulus6633

0

당신이 AppleScript를 편집기에서 코드를 실행하고 이벤트를 보면/지역 답글

코드이 귀하의 첫 번째 라인을 변경 수정하려면 ...

enter image description here

선택 항목이 중괄호 ({"1"})로 표시됩니다. 그들은 목록을 반환했음을 나타냅니다. with multiple selections allowed 문을 사용하여 목록에서 여러 항목을 선택하려는 경우 특히 유용합니다.

따라서 목록 {"1"}"1"을 비교 했으므로 if then 문이 실패했습니다. 다른 모든 것이 실패했기 때문에 test3만이 유일한 옵션이었습니다.

를 해결하려면, 당신은 목록에서 항목을 선택할 수 있습니다 그래서 당신은 사과와 사과를 비교하는 텍스트이

set choice to item 1 of (choose from list {"1", "2", "3"})

또는 선택을 변환처럼, 반환 :

set choice to (choose from list {"1", "2", "3"}) as text

희망 사항. 도움이되었습니다.

+0

고맙습니다, 지금 작동합니다 :) – user3649750