我已经坚持了一段时间,所以任何帮助都会受到赞赏。我是ColdFusion的新手,所以欢迎所有的建议。
我正在收集cfform
中的数据,然后将其插入到SQL表中,该表工作正常。目前,cfform
是使用HTML表格中的cfloop自动生成的。但是出于某种原因,cfinput-datefield日历正在生成JavaScript问题,除非cfform位于相同的td中,这不是一个可行的选项。
我设法让它在不同的页面上工作,并将代码复制并粘贴到这个页面中,但仍无济于事。 JS错误是Uncaught TypeError: Cannot read property split of undefined
但是,只要cfform和cfinput彼此相邻,它就会消失。看看渲染的代码,似乎cfform立即关闭了自己,<form...></form>
但不确定该怎么做。
get_vessel_info和get_container_info都是完美之前的cfqueries。所有变量也已正确定义。
这是我的代码:
<cfoutput>
<table name="main-table">
<tr class="titlerow">
<td>#invoiceno#*</td>
<td>#dateofentry#*</td>
<td>#containerno#</td>
<td>#sealno#</td>
<td>#insurancecoefficient#*</td>
<td>#freightperkilo#*</td>
<td></td>
</tr>
<cfif get_vessel_info.number_of_containers gte 1>
<cfloop from="1" to="#get_vessel_info.number_of_containers#" index="i">
<cfform action="inboundcontainerinsert.cfm?vessel_ID=#session.vessel_ID#" name="containerinsertrow#i#" method="post">
<tr>
<td><cfinput type="text" name="invoice_no#i#" placeholder="#entervalue#" maxlength="50" required="yes" value="#invoicenovalue#"></td>
<td><cfinput type="datefield" name="date_of_entry#i#" placeholder="#selectvalue#" maxlength="50" required ="yes" value="#dateofentryvalue#" mask="DD-MMM-YYYY"></td>
<td><cfinput type="text" name="container_no#i#" placeholder="#entervalue#" maxlength="50" value="#containernovalue#"></td>
<td><cfinput type="text" name="seal_no#i#" placeholder="#entervalue#" maxlength="50" value="#sealnovalue#"></td>
<td><cfinput type="text" name="insurance_coefficient#i#" maxlength="50" required="yes" value="#insurance_covalue#"></td>
<td><cfinput type="text" name="freightperkg#i#" placeholder="#entervalue#" maxlength="50" required="yes" value="#freightperkgvalue#"></td>
<cfif #container_id# NEQ "">
<cfset submitname = 'updaterow'><cfset submitvalue = #freightstore_updaterow#>
<cfelse>
<cfset submitname = 'submitrow'><cfset submitvalue = #freightstore_submitrow#>
</cfif>
<td><cfinput type="submit" name="#submitname#" value="#submitvalue#"/></td>
</tr></cfform>
</cfloop>
对任何建议持开放态度。我不知道jQuery或Ajax所以使用它们犹豫不决,除非有人能够创造一个完美的工作修复。我添加了<cfajaximport tags="cfinput-datefield">
但无济于事。
如果您有任何疑问,请随时提出。
答案 0 :(得分:0)
经过艰苦的调试后,我发现表格需要在标签内部启动而不能反转。希望这能节省一些人的时间!