跳转到内容

模組:Infobox animanga/other2

维基百科,自由的百科全书

这是本页的一个历史版本,由Cwek留言 | 贡献2014年10月10日 (五) 08:36编辑。这可能和当前版本存在着巨大的差异。

local ia_other={}
function ia_other.main(frame)
    local args=frame:getParent().args

    local key_model="|-\n| style=\"background: #e6e9ff;\" nowrap | "
    local val_model="| "
    local body=""
    local entry={}
    
    local i=1
    while true do--frame的args不是完全table实现,无法用#args查表长,只能死循环试探结束。
        t_key=args['key'..i]
        t_val=args['value'..i] or ""
        
        if (t_key~=nil) then   
            t_item={
                    ["key"]=t_key,
                    ["val"]=t_val
                    }
            table.insert(entry,t_item)
            i=i+1
        else
            break
        end 
    end    
    
    for k,v in ipairs(entry) do
        local key=v.key
        local val=v.val
        
        body =body..
              key_model .. "'''".. key .. "'''".. "\n" ..
              val_model .. val .. (k~=#entry and {"\n"} or {""})[1]
    end   
    
    local out=body

    return out;
end 

return ia_other