如何在按下按钮后显示其他信息?

时间:2015-05-03 18:30:01

标签: html coldfusion

我的意图是:首先我要在页面上显示一个按钮,点击按钮后,该按钮将被删除并显示一些其他信息。因此,我使用了以下代码,但它不起作用,按钮仍然存在,并且"其他信息"也没有表现出来。你们可以提供一些我在这里出错的建议吗?提前谢谢。

这是显示信息的代码:

    <cfif displayMessage eq 1>
        <cfif ifUploaded eq 0>
            <div id='message_box'>
            <cffile action="upload" filefield="PRESENTATION_FILENAME" destination="#ExpandPath("./uploads/")#" nameconflict="overwrite">
            <cfset myfile = #cffile.clientFile#>
            <cfset myurl = mid(cgi.HTTP_REFERER,1,46) & 'uploads/' & #myfile#>
            <div id="btn"><input type="button" name="kalturaBtn" value="upload to kaltura" href="javascript:void();" onclick="popupwindow('https://lampa.human.cornell.edu/csg.kaltura/test.php?kurl=#myurl#&kname=#form.title#&rec=#ddl_choice#','','1200', '700'); return false;"></div>
           </div>
        </cfif>
     </cfif>

    <cfif ifUploaded eq 1>
        <div id='message_box'>
        <div>#messageTitle#</div>
        <div>#messageBody#</div>
    </cfif>

我有以下代码来设置&#34; displayMessage&#34;和&#34; ifUploaded&#34;在点击&#34; kalturaBtn&#34;之后显示不同的信息按钮。

<cfif kalturaBtn eq "upload to kaltura"> 
    <cfset ifUploaded = "1">
    <cfset displayMessage = "0">
</cfif>

为什么我使用了另一个变量&#34; displayMessage&#34;这是:所有这些信息只有在我在此页面上提交表格后才会显示。

HTML代码:

     <cfoutput>
        <cfform name="frmPresentation" id="frmPresentation" action="#CGI.SCRIPT_NAME#" enctype="multipart/form-data">

        <!--- Information Table --->
        <div id='main_body'>
            <div id='inside'>
            <div style='text-align: center; font: bold 18pt Arial, Helvetica, sans-'serif'>CHE Multimedia Management Page</div>
                <br/>
                <cfif displayMessage eq 1 AND len(form.PRESENTATION_FILENAME) gt 0>
                    <cfif ifUploaded eq 0>
                    <div id='message_box'>
                        <cffile action="upload" filefield="PRESENTATION_FILENAME" destination="#ExpandPath("./uploads/")#" nameconflict="overwrite">
                        <cfset myfile = #cffile.clientFile#>
                        <cfset myurl = mid(cgi.HTTP_REFERER,1,46) & 'uploads/' & #myfile#>
                        <div id="btn"><input type="button" name="kalturaBtn" value="upload to kaltura" href="javascript:void();" onclick="popupwindow('https://lampa.human.cornell.edu/csg.kaltura/test.php?kurl=#myurl#&kname=#form.title#&rec=#ddl_choice#','','1200', '700'); return false;"></div>
                        <span onclick='this.parentNode.style.display="none"'></span>
                       </div>
                    </cfif>
                 </cfif>

                    <cfif ifUploaded eq 1>
                        <div id='message_box'>
                        <div>#messageTitle#</div>
                        <div>#messageBody#</div>
                        </div>
                    </cfif>

                   <cfdump var="#kalturaBtn#">

     // a lot of other code omitted here
     <input type='submit' name='submitMedia' value='Submit Changes' class='submit' onclick='return confirmSubmit()'/>
    </form>
    </cfoutput>

1 个答案:

答案 0 :(得分:1)

好的,也许这会对你有帮助。

您正尝试使用普通按钮提交表单。

<input type="button" name="kalturaBtn" value="upload to kaltura" href="javascript:void();" onclick="popupwindow('https://lampa.human.cornell.edu/csg.kaltura/test.php?kurl=#myurl#&kname=#form.title#&rec=#ddl_choice#','','1200', '700'); return false;">`

相反,您需要使用提交按钮。导致问题的另一个原因是,在popupwindow()脚本之后,您有return false取消了表单提交。改变这两样的事情,你的表格应该有效。此外,输入元素没有href属性。

<input type="submit" name="kalturaBtn" value="upload to kaltura" onclick="popupwindow('https://lampa.human.cornell.edu/csg.kaltura/test.php?kurl=#myurl#&kname=#form.title#&rec=#ddl_choice#','','1200', '700')">`

由于您的表单未提交,因此您的页面未发生变化。