2016-10-22 98 views
0

如何从这个记录列表中获得仅显示'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

[OT]:我在石勒苏益格 - 荷尔斯泰因附近的丹麦边境住了6年,还记得美味的丹麦果酱* fra den gamle fabrik *。 – vadian

+0

[OT]:哈哈,是的,这是一个很好的果酱! :-) – Polle

回答

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 
+0

谢谢,伙计! 它似乎工作,所以我会尝试和执行这个到我的脚本:-) – Polle