2015-04-10 3 views
0

У меня возникли проблемы с созданием динамического выпадающего меню выбора в ColdFusion. Я хотел бы заполнить меню выбора на основе даты, введенной через JQuery DatePicker (SpeakDate). Тем не менее, я получаю проблему, когда говорит, что SpeakDate в моем запросе не определен в моей форме. Любая помощь будет оценена по достоинству.Coldfusion 10 Динамический выбор из Microsoft SQL

<head> 
    <link type="text/css" rel="stylesheet" href="css/jquery-ui.css"> 
    <script src="js/jquery.js"></script> 
    <script src="js/jquery-ui.js"></script> 
    <script> 
    $(function() { 
     $("#datepicker").datepicker(); 
    }); 
    </script> 

    <cfquery name="getAgenda" 
     datasource="SpeakerCard"> 
     SELECT ItemNo 
     FROM tbl_AgendaList 
     WHERE MeetingDate = '(#Form.SpeakDate#)' 
    </cfquery> 
</head> 

<cfoutput> 
    <cfform id="Form" action="Card.cfm" method="post"> 
    <p>Date: <input type="text" id="datepicker" name="SpeakDate"><p> 

    <p>Agenda Item: 
    <cfselect query="getAgenda" 
     name="ItemNo" 
     value="ItemNo"> 
    </cfselect> 
    </cfform> 
</cfoutput> 
+5

Вы не можете сделать это. Coldusion работает на сервере задолго до того, как в браузере будет выбрана любая дата. Вы можете отправить дату на сервер с помощью ajax и вернуть возвращаемый '

+0

Другими словами, вы не можете получить доступ к переменным области, пока вы не представите форму , –

+0

Я вижу ... Итак, если я использую ajax, запрос базы данных будет отправлен после того, как дата будет выбрана? – khgove

ответ

0

Это далеко не оптимальное решение, однако оно может привести к результату, который вы ищете.

<head> 
<link type="text/css" rel="stylesheet" href="css/jquery-ui.css"> 
<script src="js/jquery.js"></script> 
<script src="js/jquery-ui.js"></script> 
<script> 
$(function() { 
    $("#datepicker").datepicker(); 
}); 
</script> 
<cfif structKeyExists(Form,"SpeakDate")> 
    <cfquery name="getAgenda" 
     datasource="SpeakerCard"> 
     SELECT ItemNo 
     FROM tbl_AgendaList 
     WHERE MeetingDate = '(#Form.SpeakDate#)' 
    </cfquery> 
</cfif> 
</head> 

<cfoutput> 
<cfform id="Form" action="Card.cfm" method="post"> 
<p>Date: <input type="text" id="datepicker" name="SpeakDate"><p> 

<p>Agenda Item: 
<cfif isDefined("getAgenda")> 
    <cfselect query="getAgenda" 
     name="ItemNo" 
     value="ItemNo"> 
    </cfselect> 
</cfif> 
</cfform> 

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