Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/268.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何将数据从SQL Server传递到jQuery var[Flot]_C#_Jquery_Sql Server_Data Binding_Flot - Fatal编程技术网

C# 如何将数据从SQL Server传递到jQuery var[Flot]

C# 如何将数据从SQL Server传递到jQuery var[Flot],c#,jquery,sql-server,data-binding,flot,C#,Jquery,Sql Server,Data Binding,Flot,我在MS SQL Server上的数据库中有两列数据。一个是datetime变量,另一个是int 我正在尝试jQuery和Flot来绘制datetime和int 我可以使用C#通过编程从SQL Server获取数据。但是如何将其传递到包含用于flot的vars的JavaScript文件?如果要在加载的html文档中调用脚本,可以使用相应HtmlDocument或WebBrowser对象中的Invoke方法调用该页面中的JavaScript函数,例如: 我不确定您如何将数据从c#传递到*.js文件

我在MS SQL Server上的数据库中有两列数据。一个是datetime变量,另一个是int

我正在尝试jQuery和Flot来绘制datetime和int


我可以使用C#通过编程从SQL Server获取数据。但是如何将其传递到包含用于flot的vars的JavaScript文件?

如果要在加载的html文档中调用脚本,可以使用相应HtmlDocument或WebBrowser对象中的Invoke方法调用该页面中的JavaScript函数,例如:


我不确定您如何将数据从c#传递到*.js文件。在您的情况下,我认为这是不可能的。但是您可以尝试在包含*.js include的页面上进行黑客攻击。您可以尝试声明javascript变量并将其设置为c#代码(在ASPX中,如果是ASP.NET),然后将*.js include引用放在该点之后,在该点中不重新声明变量,而是使用它。您还可以使用JSON或AJAX调用服务器端代码,返回值并执行代码

场景1:(黑客方式,不干净,不难维护,但能完成任务)

File.aspx

<script language="javascript" type="text/javascript">
var MyVariable = "<%=C_Variable_On_Code_Behind%>";
</script>
<script type="text/javascript" src="/scripts/YourJsFile.js" >
</script>
场景2:(JSON、AJAX、JQUERY UI)

自动完成的jquery ui示例:

另一个例子:

场景3:(从服务器端c#写入客户端)

通过
ClientScriptManager
对象使用
RegisterStartupScript
RegisterClientScriptBlock
,这里是我放在一起的一个伪代码,您可以查找它们并了解更多信息,这不是完整的代码

ClientScriptManager script = Page.ClientScript;
if (!script.IsClientScriptBlockRegistered(this.GetType(), "YourLabelForThis"))
{
   script.RegisterClientScriptBlock(this.Page.GetType(), "YourLabelForThis",
    "<script type=\"text/javascript\">var MyVariable = "Dummy text";</script>", false);
}
ClientScriptManager script=Page.ClientScript;
如果(!script.IsClientScriptBlockRegistered(this.GetType(),“YourLabelForThis”))
{
script.RegisterClientScriptBlock(this.Page.GetType(),“YourLabelForThis”,
“var MyVariable=”伪文本“;”,false);
}

请注意,您必须将js代码作为包含代码或其他代码放置在页面的正确位置,以便在此代码之前或之后进行查找,因此请通过
ClientScriptManager
查找
RegisterStartupScript
RegisterClientScriptBlock
。查看代码将放置在何处以及应如何处理。也可以查看浏览器中的页面源代码,也可以查看它。

我不确定我是否理解这一点。我只是想知道如何将数据从C#传递到jQuery。或者以某种方式从jQuery访问SQL数据库。有一百万种或者至少有很多种方法可以做到这一点。但无论如何,最终都会将C#变量作为字符串写入DOM或javascript变量,并使用eval或parse。请告诉我们您是使用MVC还是formsIm未使用MVC。我在使用表单。我如何从C#中写入javascript变量?你帮了我很多!非常感谢你。我从中学到了很多。虽然我没有得到我想要的,谢谢你的信息。如果我得到结果,我会发回
ClientScriptManager script = Page.ClientScript;
if (!script.IsClientScriptBlockRegistered(this.GetType(), "YourLabelForThis"))
{
   script.RegisterClientScriptBlock(this.Page.GetType(), "YourLabelForThis",
    "<script type=\"text/javascript\">var MyVariable = "Dummy text";</script>", false);
}