jQuery将参数发送到Rails应用程序以保存在数据库中
jQuery sending parameter to Rails app to save in database
我想用Rails将通过放置在不同站点的jQuery标签发送的params保存为mysql中的记录。到目前为止,我写的jQuery标签如下。
<script src="//code.jquery.com/jquery-1.11.3.min.js"></script>
<script src="//code.jquery.com/jquery-migrate-1.2.1.min.js"></script>
<script src="jquery.xdomainajax.js"></script>
<script>
$(function(){
var webURL = {fullUrl: window.location.href
};//for getting complete url,or window.location.origin for domain alone.
$.ajax({
url: 'http://localhost:3000/viewcounter/count', // count_action in viewcounter_controller
type: "GET",
data: webURL
})
});
</script>
对于rails部分,称为viewcounter的控制器是这样的。
def count
url = params[:fullURL]
Viewcounter.create(site_url: url)
end
此外,我写这篇文章是为了在config/application.rb 中处理跨域问题
class Application < Rails::Application
config.active_record.raise_in_transactional_callbacks = true
config.action_dispatch.default_headers.merge!({
'Access-Control-Allow-Origin' => '*',
'Access-Control-Request-Method' => '*'
})
end
然后,我创建了一个HTML文件,上面的jQuery就是在其中编写的,并在浏览器中打开它。
我期望jQuery在控制器中触发操作,并在数据库中创建一个记录。
但事实并非如此。问题出在哪里?我该如何解决?
在您的url 中传递数据
http://localhost:3000/viewcounter_controller/count?param_1=param1¶m_2=param2
然后询问控制器中的参数
试试这个:
$(function(){
var webURL = window.location.href;
$.ajax({
url: 'http://localhost:3000/viewcounter/count?fullURL=' + webURL,
type: "GET"
})
});
相关文章:
- Javascript-如何读取json文件中的列并将其保存在Javascript数组中
- 如果使用 lodash 将属性存在于另一个对象中,则向对象添加属性
- Jquery菜单操作不稳定,定位不正确,存在一般错误
- 如何将getJson的响应保存在全局变量中
- 按下按钮时保存cookie
- 如何使用 Angular JS 将数据保存在数据库中
- 如何使用Spring MVC将Facebook返回的响应数据保存在Java类中
- 子字符串/正则表达式以获取字符串中保存的 SRC 值
- 用于检查数组中是否存在元素的javascript自定义方法
- HTML5在画布中加载较小的图像并保存实际大小的图像
- 是否可以在浏览器中使用纯JavaScript保存音频流
- 如何将多个画布保存为一个图像
- 使用javascript/jquery从现有数组中创建一个新数组,该数组保存项目存在的次数
- jQuery localStorage 如果存在,请保存它
- 如何在移动到新的HTML页面后使用保存在Javascript文件中的保存变量
- 根据页面元素的存在更改文件路径以保存页面内容
- 如何比较保存在变量中的querystring参数,并将变量保存在cookie中,并在每页上进行比较
- 在Json解析和在数据库中保存值方面存在问题
- 将对象替换为保存前已经存在的对象
- 如何在Mongoose中保存之前检查数据库中是否存在嵌入文档