我有一个 Sybase SP,它将日期作为唯一参数并返回有关订单的信息。我从 CF 页面上的 JQuery 日期选择器获取日期 - 格式为 yy-mm-dd。当没有输入时,SP 默认为 getDate()。当我在表格上输入日期时,一切正常。当我不发送日期时 - 日期字段留空 - 我收到一个 CF 错误,告诉我参数不是日期类型。我知道 SP 正在发送一个日期时间值,但我怎样才能让 CF 函数识别它?
在 SP...
declare @order_dt datetime
If @order_dt IS NULL
BEGIN
SELECT @order_dt = getDate()
END
在cfc...
<cfargument name="order_dt" type="date" required="true" hint="order date to search for" >
和
<cfprocparam type="In" cfsqltype="CF_SQL_DATE" dbvarname="@order_dt" value="#order_dt#" null="No">
在 .cfm 页面上...
<!--JQuery datepicker -->
<script type="text/javascript">
$(function() {
$("#datepicker").datepicker({ dateFormat: "yy-mm-dd" }).val()
});
表格如下所示:
<form id="xxxxForm">
<label for="date1">Pick a Date... </label>
<br>
<p><input type="text" id="datepicker" value="" name="date1"></p>
Then choose 'Search'...<br>
<input type="submit" name="submit" value="Search">
<br>
<br>
</form>
我怎样才能让 CF 认识到这是一个很好的价值?我在想,如果我将@order_dt 声明为只是一个日期?