【问题标题】:Execute InsertQuery command from SqlDataSource in JavaScript在 JavaScript 中从 SqlDataSource 执行 InsertQuery 命令
【发布时间】:2011-09-27 08:27:41
【问题描述】:

我正在使用 ASP.NET

如果我想在后面的代码中从我的 SqlDataSource 执行插入命令,我会这样做。

SqlDataSource1.Insert()

但是我怎么能在 JavaScript 中做到这一点呢?

<script type='text/javascript' language="javascript"> 

  function valSubmit() {

  //Need to call the Insert Command here!

  }

</script>

我可以在我的代码后面的哪个位置放置 Insert() 命令,以确保只有在 JavaScript 中的 valSubmit() 函数执行后,它才会执行 Insert 命令?

【问题讨论】:

  • 您的意思是从 JavaScript 端运行 SqlDataSource1.Insert() 吗?据我所知,无法通过 JavaScript 直接调用某种编程语言的任何函数。唯一的解决方案,如果我是正确的,AJAX 调用您的 Web 应用程序的某个 URL,该 URL 对应于您的应用程序中的一个函数,然后该函数调用您的 SqlDataSource1.Insert()。我希望这就是你的意思
  • 是的,这就是我想要做的......但我必须使用 AJAX 吗?这听起来很复杂,因为我确信必须有一种简单的方法可以在不使用 AJAX 的情况下做到这一点。
  • 所以你必须在你的应用程序中创建一个对应于 URL 的函数/方法。例如,您可以使用mysite.ext/submitvalue.asp(x) 之类的 url,然后在您的应用程序中在由该 url 处理的适当位置创建方法/函数。从该函数/方法中,您现在可以调用 SqlDataSource1.Insert() 并执行其他操作!
  • Javascript 在客户端运行。您必须将数据传输到服务器端(使用常规 http post 或 AJAX)并在服务器上执行插入命令。您肯定需要了解客户端和服务器端之间的区别。

标签: c# javascript asp.net vb.net sqldatasource


【解决方案1】:

创建一个 Web 处理程序,它将调用 Insert 方法并使用您首选的 AJAX 方法调用此处理程序。

【讨论】:

  • 听起来很复杂,必须有一种简单的方法来使用 JavaScript 执行命令.....
【解决方案2】:

创建Ajax方法Example of Ajax method

$.ajax({ type: POST, url: url, data: data, success: success, dataType: dataType }); function success() { alert(data saved); }
URL : 一个新页面,例如 ajax.aspx。在此页面加载时,您可以编写插入方法。 Data : 参数,这些将使用 Request.Querystring 访问

并调用用于插入或任何其他操作的服务器方法。

【讨论】:

  • 你忘了说这是 jQuery,OP 可能实际上并没有在他们的项目中使用它。
猜你喜欢
  • 2012-05-27
  • 1970-01-01
  • 2011-05-05
  • 2012-07-15
  • 2017-07-04
  • 2010-12-25
  • 1970-01-01
  • 2012-10-23
  • 1970-01-01
相关资源
最近更新 更多