1

我有一些自定义 html 代码,我需要从我在 mura 后端创建的表单中获取名称和图像标题,我该怎么做,我在谷歌组中到处搜索,但没有找到相关的,我只需要一个开始做什么以及如何找到保存的数据和 cfoutput 我认为我需要进行迭代

<cfset it = $.getBean('content').loadBy(title='myform')>
    <cfdump var="#it#">
    <cfif it.hasNext()>
  <ul>
    <cfloop condition="it.hasNext()">
      <cfset item = it.next()>
      <li>
        #esapiEncode('html', item.get('name'))#
      </li>
    </cfloop>
  </ul>

我需要获取表格并以 ul > li 格式显示数据,但它给了我关于未定义 hasext() 的错误,这在某种程度上确实有道理,但我不确定我在这里缺少什么

4

1 回答 1

1

好的。我可以使用 MURA CMS 7.1 和表单生成器确认这可行。

内容编号:

重要的部分是通过其“ContentID”引用表单,您可以在“表单生成器 -> 表单 -> 高级”部分中找到它。

变量参考:

此外,您还需要分别更改对“formContentId”和“wddxImageFieldName”的引用。

设置:

要对此进行测试,只需将其放入相应的主题模板中,并确保您至少提交了一份表单

基于 Steve Withington 的代码,位于:

https://gist.githubusercontent.com/stevewithington/5963610/raw/4d8bca4675500075b0a5831db52ccc9b8bf0bf57/mura-form-results.cfm

<cfscript>
  rsData = QueryNew('');
  dcm = $.getBean('dataCollectionManager');
  formContentId = '856499BD-01E2-48C9-CD1A0430D859E81B';
  wddxImageFieldName = 'AVATAR_ATTACHMENT';
</cfscript>

<cfif !Len($.event('responseid'))>
  <!--- All Form Submission Results --->
  <cfscript>
      formBean = $.getBean('content').loadBy(contentID=formContentId);
      if ( !formBean.getIsNew() ) {
          currentFieldList = dcm.getCurrentFieldList(formBean.getContentID());
          data = {
              sortby = 'entered'
              ,sortdirection = 'desc'
              ,keywords = ''
              ,siteid = $.event('siteid')
              ,contentid = formBean.getContentID()
          };
          rsData = dcm.getData(data);
      }
  </cfscript>
  <cfif !rsData.recordcount>
    <h3>Sorry, either the form does not exist, or no records have been submitted yet.</h3>
  <cfelse>
    <table cellspacing="5" cellpadding="5" border="1">
      <!--- FieldNames --->
      <thead>
          <tr>
            <th>&nbsp;</th>
            <th>Date/Time Entered</th>
            <cfloop list="#currentFieldList#" index="fieldName">
              <th>#esapiEncode('html', fieldName)#</th>
            </cfloop>
          </tr>
      </thead>
      <!--- Actual Output --->
      <tbody>
        <cfloop query="rsData">
            <tr>
              <!--- Edit --->
              <td>
                  <a href="./?responseid=#responseid#">Edit</a>
              </td>
              <!--- The Date/Time Stamp --->
              <td>
                  #entered#
              </td>
              <!--- The Data --->
              <!--- Forms are stored as WDDX files ... so we need to unpack them --->
              <cfwddx action="wddx2cfml" input="#data#" output="record" />
              <cfloop list="#currentFieldList#" index="fieldName">
                <td>
                  <cfif StructKeyExists(record, fieldName)>
                    #record[fieldName]#
                    <cfif CompareNoCase(fieldName,wddxImageFieldName) EQ 0>
                      <img src="#$.getURLForImage(record[fieldName])#">
                    </cfif>
                  <cfelse>
                    &nbsp;
                  </cfif>
                </td>
              </cfloop>
            </tr>
        </cfloop>
      </tbody>
    </table>
  </cfif>
</cfif>
于 2018-06-27T09:59:04.990 回答