gpt4 book ai didi

javascript - 增加一个 div 数据值,然后在 coffeescript 中再次设置它

转载 作者:行者123 更新时间:2023-11-28 10:48:42 31 4
gpt4 key购买 nike

我有这个 coffeescript 代码:

 $(document).ready ->
setInterval refresh_table, 1000

refresh_table = ->
$.ajax
url: "/ac_units/refresh_table"
format: "js"
type: "POST"
data: { pointer:$('#pointer').data('pointer'), ideal:$('#ideal').val() , current:$('#current').val() }

此代码有效。

我想在此代码中添加功能。 1)我想在将指针发送到上面的服务器之前增加指针 2) 我想将更新的指针值设置为 div 的数据 3) 我想将更新后的指针发送到服务器

我尝试了以下方法来完成上述功能:

$(document).ready ->
setInterval refresh_table, 1000

refresh_table = ->
a = $("#pointer").data("pointer")
$("#pointer").data "pointer", a++
$.ajax
url: "/XXX/refresh_table"
format: "js"
type: "POST"
data: { pointer:$('#pointer').data('pointer'), abc:$('#abc').val() , efg:$('#efg').val() }

但这没有用。不会发生递增。这是我的控制台的一些输出:

 Processing by XXXController#refresh_table as */*
Parameters: {"pointer"=>"0", "abc"=>"73", "efg"=>"79"}
Received params = {"pointer"=>"0", "abc"=>"73", "efg"=>"79", "controller"=>"xxx", "action"=>"refresh_table"}
ptr = 0


Started POST "/XXX/refresh_table" for 127.0.0.1 at 2014-04-04 14:15:44 -0400
Processing by XXXController#refresh_table as */*
Parameters: {"pointer"=>"0", "abc"=>"73", "efg"=>"79"}
Received params = {"pointer"=>"0", "abc"=>"73", "efg"=>"79", "controller"=>"xxx", "action"=>"refresh_table"}
ptr = 0

我做错了什么?为什么变量没有递增?谁能推荐一下?

谢谢


尝试使用此代码来响应以下答案:

 $(document).ready ->
setInterval refresh_table, 1000

refresh_table = ->
a = $("#pointer").data("pointer")
x = ++a
$("#pointer").data "pointer", x
$.ajax
url: "/ac_units/refresh_table"
format: "js"
type: "POST"
data: { pointer:x, ideal:$('#ideal').val() , current:$('#current').val() }

但指针值仍然始终为0

最佳答案

您正在使用 a++。您需要 ++a 或简单的 a + 1

a++ 在递增之前评估为 a 的值,因此这就是您设置为"new"data 属性的值。

简单...

a = 1
x = a++
console.log(a) # 2
console.log(x) # 1

这会将 a 的值(即 1)保存到一边,然后将 a 递增到 2,然后将 x 设置为 保存 a 的值,它是 1

基本上,您的代码保证数据属性永远不会更改,因为它总是将 pointer 设置回 a 递增之前的当前值:

a = $("#pointer").data("pointer")
$("#pointer").data "pointer", a++

虽然此代码通过将属性设置为 a after a 的值来正确地增加属性。

a = $("#pointer").data("pointer")
$("#pointer").data "pointer", ++a

关于javascript - 增加一个 div 数据值,然后在 coffeescript 中再次设置它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22870303/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com