2009-09-25 20 views
5

Un modello HTML viene passato a Coldfusion. Il tag head del modello ha attributo aggiuntivo:Come impedire a Coldfusion di iniettare cfform.js nella sezione head?

<head profile="http://abc.com"> 

Il problema è che quando si genera l'uscita basato su questo modello Coldfusion inietta gli script all'interno del tag testa:

<head <script type="text/javascript" src="/CFIDE/scripts/cfform.js"></script> 
<script type="text/javascript" src="/CFIDE/scripts/masks.js"></script> 
profile="http://abc.com"> 

Questo provoca profile="http://abc.com"> a comparire nella parte superiore della pagina e impedisce la convalida della pagina.

Il codice di iniezione si verifica solo quando è presente un tag di modulo. L'iniezione del posto sbagliato non si verifica se il tag head non ha attributi. La presenza dell'attributo è un requisito del progetto e non può essere omesso.

È possibile impedire a Coldfusion di iniettare gli script?

+0

Sicuramente un bug ColdFusion. Puoi segnalarlo ad adobe qui: https://www.adobe.com/cfusion/mmform/index.cfm?name=wishform&product=7 – Kip

+0

Se invii il bug report, potresti anche voler includere questo link per mostrare che un attributo profilo nel tag head è perfettamente valido HTML: http://www.w3schools.com/tags/tag_head.asp – Kip

+0

@Kip Grazie per il suggerimento. Ho appena inviato un bug ad Adobe. – Alex

risposta

5

L'iniezione di script avviene solo per cfforms, non per i moduli standard. Se non stai utilizzando nessuno dei miglioramenti di cfform, puoi semplicemente passare a un modulo standard.

Ho controllato l'elenco di hotfix cumulativo e non ho visto una correzione per questo.

+0

@ Ben Grazie per il suggerimento. Questo è quello che probabilmente finirò per fare. Non vedo l'ora di riscrivere il codice esistente. Sai se questo problema è elencato come un bug ovunque? – Alex

+0

Non so se c'è un bug pubblico. Ti suggerirei di inviarlo, come suggeriva Kip. –

+1

C'è un bug tracker pubblico qui: http://cfbugs.adobe.com/cfbugreport/flexbugui/cfbugtracker/main.html – Ian

2

mia soluzione: Mettere il meta tag a destra dopo il

<html> 
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> 
<head> 

quando CF crea la pagina mette l'etichetta sotto la ma soprattutto i tag

<!DOCTYPE html> 
<html class=" ext-strict"> 
<head> 
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> 
<script type="text/javascript">/* <![CDATA[ */_cf_loadingtexthtml="<img alt=' ' src='/CFIDE/scripts/ajax/resources/cf/images/loading.gif'/>"; 
_cf_contextpath=""; 
_cf_ajaxscriptsrc="/CFIDE/scripts/ajax"; 
_cf_jsonprefix='//'; 
_cf_clientid='9851DA49BD375D9722A9D6B1951976AC';/* ]]> */</script><<script type="text/javascript" src="/CFIDE/scripts/ajax/yui/yahoo-dom-event/yahoo-dom-event.js"></script> 
Problemi correlati