2016-03-21 2 views
4

У меня есть страница с этим основным процессом:CFWINDOW - Форма представить в УТС оставаться внутри CFWindow

  • Нажмите флажки рядом с формами, которые вы хотите загрузить
  • Нажмите отправить
  • CFWindow выскакивает собрать некоторые основные сведения
  • нажмите кнопку Submit для загрузки формы, оставаясь в окне, которое открыл CFWindow

при нажатии на суб mit внутри CFWindow, он возвращает вас на родительскую страницу. Я хочу, чтобы подача формы оставалась внутри CFWindow. Я видел этот пост: Refresh cfwindow content. Однако, refreshOnShow = "true" не работает. Каждый раз, когда я нажимаю submit, он возвращается к родительскому окну.

Вот страница Родитель:

<cfform name="myform"> 
    <cfinput type="hidden" name="OrgID" value="#getit.orgID#"> 
    <table width="95%" border="0" cellspacing="5" cellpadding="0" align="center"> 
     <tr> 
     <td width="50%" valign="top" class="coretextforBR"> 
      <cfinput type="checkbox" name="GetThese" value="#form_ID#"> 
      <a class="corelinkforBR">#Forms_Name#</a> 
      <br /><br /> 
      #Forms_Description# 
      <br /><br /> 
     </td> 
     </tr> 
     <tr> 
     <td width="50%" valign="top" class="coretextforBR"> 
      <cfinput type="checkbox" name="GetThese" value="#form_ID#"> 
      <a class="corelinkforBR">#Forms_Name#</a> 
      <br /><br /> 
      #Forms_Description# 
      <br /><br /> 
     </td> 
     </tr> 
     <tr> 
     <td width="50%" valign="top" class="coretextforBR"> 
      <cfinput type="checkbox" name="GetThese" value="#form_ID#"> 
      <a class="corelinkforBR">#Forms_Name#</a> 
      <br /><br /> 
      #Forms_Description# 
      <br /><br /> 
     </td> 
     </tr> 
     <tr> 
     <td colspan="2"> 
      <input type="submit"value="Get It" onclick="javascript:ColdFusion.Window.show('mywindow1')"> 
     </td> 
     </tr> 
    </table> 
</cfform> 

    <cfwindow x="250" y="250" width="400" height="400" 
     name="mywindow1" title="Almost ready to download" initshow="false" draggable="false" resizable="false" 
     refreshOnShow="true" source="submitform.cfm?GetThese={myform:GetThese.value}&OrgID={myform:OrgID}&action=information" 
     bodystyle="background-color: white;" headerStyle="background-color: ###getcss.color#; font-family: #getcss.font#; color: ###getcss.fontcolor#;" /> 

Вот источник (submit.cfm) для CFWwindow:

<cfparam name="attributes.action" default="information"> 
<cfoutput> 
    <html> 
    <head> 
     <style type="text/css"> 
     </style> 
    </head> 
    <body> 
     This window will collect information to begin download 
     <br> 
     <!--- action for downloading ---> 
     <cfif attributes.action eq "download"> 
     <cfloop info and stuff left out> 
      <a href="./log_download.cfm?filename=#Forms_File#&OrgID=#UrlEncodedFormat('#Forms_OrgID#')#" class="corelinkforBR">#Forms_Name#</a><br /> 
     </cfloop> 
     <!--- what you see when page initially loads ---> 
     <cfelse> 
      <form action="submitform.cfm?action=download" method="post"> 
       <input type="hidden" name="GetThese" value="#attributes.GetThese#"> 
       <input type="hidden" name="OrgID" value="#attributes.OrgID#"> 
       <table width="95%" border="0" align="center"> 
        <tr> 
        <td class="coretextforBR">First:</td> 
        <td><input type="text" name="CollectedInfo_First"></td> 
        </tr> 
        <tr> 
        <td class="coretextforBR">Last:</td> 
        <td><input type="text" name="CollectedInfo_Last"></td> 
        </tr> 
        <tr> 
        <td class="coretextforBR">Phone:</td> 
        <td><input type="text" name="CollectedInfo_Phone"></td> 
        </tr> 
        <tr> 
        <td class="coretextforBR">Email:</td> 
        <td><input type="text" name="CollectedInfo_Email"></td> 
        </tr> 
        <tr> 
        <td class="coretextforBR">Best way <br> to contact:</td> 
        <td><input type="text" name="CollectedInfo_BestWay"></td> 
        </tr> 
        <tr> 
        <td colspan="2"><input type="submit" value="Download" class="button one"></td> 
        </tr> 
       </table> 
      </form> 
     </cfif> 
</cfoutput> 
</body> 
</html> 

Я понятия не имею, что я делаю неправильно. Я не мог найти определенного ответа на мою проблему, кроме refreshOnShow. Должен ли я переосмыслить и сделать ajax submit?

+0

Почему бы просто не поместить поля другой формы на ту же страницу, что и флажки? –

+0

они не хотят их там. :-( – Adam

+2

Что делать, если вы даете форму внутри submit.cfm «target» окна, открытого с помощью cfwindow? Я думаю, 'mywindow1' в вашем примере. * OR * Определите' cfwindow' в файле submit.cfm вместо с другой формой. –

ответ

0

Использование <cfform> вместо нормального <form> Работало в соответствии с предложением Лия.

Смежные вопросы