首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用图片上传的xforms repeat元素?

使用图片上传的xforms repeat元素?
EN

Stack Overflow用户
提问于 2012-08-06 11:19:57
回答 1查看 235关注 0票数 0

谁能告诉我如何编码,使用XForms,一个小工具,允许选择上传的图片文件,如果需要的话,重复?也就是说,用户一次上传一张图片,但如果需要,可以选择一次又一次地继续上传。

它可以是元素,也可以只是一个简单的元素。我不确定repeat元素与trigger元素之间的关系。是repeat元素告诉XForms处理器重复显示哪些UI元素吗?而触发器元素是一个更新底层模型的按钮?

我不清楚如何捕捉这些信息。我是否需要大致如下的内容:

代码语言:javascript
复制
<xforms:repeat 
                <xforms:trigger>
                    <xforms:label>Add pic</xforms:label>
                    <xforms:upload
                        ref="data/picture[@id='1']"
                        mediatype="image/*">
                    </xforms:upload>
                </xforms:trigger>
</xforms:repeat>

例如,如果用户上传了5张图片,是否可以将每张图片识别为pic1、pic2、pic3?

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2013-05-17 09:30:10

Xforms Repeat元素在要显示的现有数据上重复,您想要做的是显示现有照片并插入新照片。XForms维基书籍相当全面,所以你可能想看看http://en.wikibooks.org/wiki/XForms/Inserthttp://en.wikibooks.org/wiki/XForms/Repeat_into_table

下面是一个未经测试的例子,它应该给你一个很好的指示,你需要做什么。

代码语言:javascript
复制
<html 
   xmlns="http://www.w3.org/1999/xhtml" 
   xmlns:xf="http://www.w3.org/2002/xforms" 
   xmlns:ev="http://www.w3.org/2001/xml-events">
   <head>
      <title>XForms insert example</title>
      <xf:model>
         <xf:instance>
            <Data xmlns="">
               <Photo name="My Photo">
                    <!-- Data here -->
               </Photo>
               <NewPhoto name="">
               </NewPhoto>
            </Data>
         </xf:instance>
      </xf:model>
   </head>
   <body>
      <fieldset>
         <legend>Company Phone List</legend>
         <p>
            <b>Uploaded Photos...</b>
            <ul>
            <xf:repeat id="list" nodeset="/Data/Photo">
               <li><xf:output ref="@name" /></li>
            </xf:repeat>
            </ul>
         </p>
      </fieldset>
      <fieldset>
         <legend>Add New Photo</legend>
         <p> <!-- here is where we get the new record -->
            <xf:input ref="/Data/NewPhoto/@name">
               <xf:label>Photo Name:</xf:label>
            </xf:input>
            <xforms:upload
                        ref="/Data/NewPhoto"
                        mediatype="image/*">
            </xforms:upload>
            <xf:trigger>
               <xf:label>Insert... </xf:label>
               <xf:action ev:event="DOMActivate">
                  <xf:insert nodeset="/Data/Photo" at="index('list')" position="after" />
                  <xf:setvalue ref="/Data/Photo[index('list')]/@name" value="/Data/NewPhoto/@name" />
                  <xf:setvalue ref="/Data/Photo[index('list')]" value="/Data/NewPhoto" />
               </xf:action>
            </xf:trigger>
         </p>
      </fieldset>
   </body>
</html>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11822173

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档