Javascript 如何使用JSON在jquery控件中设置类型函数的属性?

Javascript 如何使用JSON在jquery控件中设置类型函数的属性?,javascript,jquery,asp.net,json,custom-controls,Javascript,Jquery,Asp.net,Json,Custom Controls,我有一个jquery日期选择器控件。我想使用它创建一个自定义ASP.net控件。 JQuery datepicker在显示之前有一个属性。此属性的类型为function。 在ASP.Net cotrol中,我试图通过JSonItem使用字符串类型设置函数,如下所示: StringBuilder strFunction = new StringBuilder(); strFunction.AppendLine(@"function (input) { ");

我有一个jquery日期选择器控件。我想使用它创建一个自定义ASP.net控件。 JQuery datepicker在显示之前有一个属性。此属性的类型为function。 在ASP.Net cotrol中,我试图通过JSonItem使用字符串类型设置函数,如下所示:

StringBuilder strFunction = new StringBuilder();
            strFunction.AppendLine(@"function (input) { ");
            strFunction.AppendLine(@" setTimeout(function () { ");
            strFunction.Append(@" var buttonPane = $(""#" + ClientID);
            strFunction.Append(@""")");
            strFunction.AppendLine(@".datepicker(""widget"").find("".ui-datepicker-close"").click(function () {");
            strFunction.Append(@" $.datepicker.clearDate($(""#" + ClientID );
            strFunction.AppendLine(@"""));");
            strFunction.AppendLine(@" });");
            strFunction.AppendLine(@" }, 1);");
            strFunction.AppendLine("}"); 

textInput.Call("datepicker", Js.Json(
                Js.JsonItem("onSelect", Js.Function(delegate {
                    if (ValueSelected != null) {
                        var request = CreateMethodInvocationRequest("OnSelect");
                        request.Send();
                    }
                })
            ),
//This is the function type of property

Js.JsonItem("beforeShow",strFunction.ToString())



));

在这里,但我没有得到结果。抛出运行时JScript错误。如果我没有设置beforeShow属性,则一切正常。但我需要这个财产。有人能推荐其他方法吗?

根据您的需要使用以下方法,而不是在展示之前

渲染, 在渲染之前, afterrender


我们不能使用beforeShow,因为它只有在与show方法一起使用时才会触发

我使用一个返回函数解决了这个问题,该函数将字符串解析为JSExpression

Js.JsonItem("beforeShow",strFunction.ToString())

嗨,Vinoth Babu,这不是beforeShow酒店的问题。这是strFunction.ToString()的问题。我们不能将函数作为字符串传递。这是我的问题。如何传递函数?