如何从此记录列表中选择列表'仅显示' Fornavn2'和' Efternavn2',但将var设置为相应的' ElevID2' ???
我知道这不是正确的语法,但它可以显示我想要的内容:
set var to ElevID2 of varEleveriklasse to choose from list (Fornavn2 of varEleveriklasse & " " & Efternavn2 of varEleveriklasse)
列表:
set varEleveriklasse to {{Fornavn2:"Kenneth", Efternavn2:"Oddersen", ElevID2:"23442"}, {Fornavn2:"Thomas", Efternavn2:"Johansen", ElevID2:"23452"}, {Fornavn2:"Johan", Efternavn2:"Thomasen", ElevID2:"76590"}, {Fornavn2:"Charlotte", Efternavn2:"Frandsen", ElevID2:"78569"}, {Fornavn2:"Mathilde", Efternavn2:"Charlottesen", ElevID2:"64569"}}
答案 0 :(得分:0)
如果没有重复循环,就无法填充列表。
获取所选项目索引的智能解决方案是将其包含在列表中。
set varEleveriklasse to {{Fornavn2:"Kenneth", Efternavn2:"Oddersen", ElevID2:"23442"}, ¬
{Fornavn2:"Thomas", Efternavn2:"Johansen", ElevID2:"23452"}, ¬
{Fornavn2:"Johan", Efternavn2:"Thomasen", ElevID2:"76590"}, ¬
{Fornavn2:"Charlotte", Efternavn2:"Frandsen", ElevID2:"78569"}, ¬
{Fornavn2:"Mathilde", Efternavn2:"Charlottesen", ElevID2:"64569"}}
set fullNameList to {}
set indexCounter to 1
repeat with anItem in varEleveriklasse
set end of fullNameList to (indexCounter as text) & space & anItem's Fornavn2 & space & anItem's Efternavn2
set indexCounter to indexCounter + 1
end repeat
set chosenItem to choose from list fullNameList
if chosenItem is false then return
set chosenItem to item 1 of chosenItem // chosenItem is a list or boolean false
set listIndex to word 1 of chosenItem as integer
set ElevID to ElevID2 of item listIndex of varEleveriklasse
display dialog ElevID