小编Jör*_*yer的帖子

如何获得jquery .val()AFTER按键事件?

我有:

$(someTextInputField).keypress(function() {
  alert($(this).val());
});
Run Code Online (Sandbox Code Playgroud)

现在警报总是在按键前返回值(例如,字段为空,我输入'a',警报给我''.然后我输入'b',警报给我'a'......).但是我想要按键后的价值 - 我怎么能这样做?

背景:我想在文本字段包含至少一个字符时立即启用按钮.所以我在每个按键事件上运行此测试,但使用返回的val()结果总是落后一步.使用change()事件对我来说不是一个选项,因为在您离开文本框之前按钮被禁用.如果有更好的方法,我很高兴听到它!

javascript forms jquery events javascript-events

97
推荐指数
5
解决办法
8万
查看次数

如何存储经常改变DB位置的订购商品

我需要能够在DB中存储大量订购商品.到目前为止,这是直截了当的:

ID Position OtherFields
 1     45      ...
 2   4736      ...
 3    514      ...
 ...
Run Code Online (Sandbox Code Playgroud)

在查询中,我总是需要获得一些项目(基于OtherFields过滤),但顺序正确.也很容易,在位置上放置一个索引并使用"按位置排序".

现在问题是:项目经常更改其位置,而不仅仅是1或2.如果ID 2将位置从4736更改为2000,我需要更新其位置和旧位置2000和4735之间所有元素的位置,添加1在每一行.并且不仅每个事务更改一个ID而且还有一些ID,并且在短时间内可以有许多事务.

我认为处理更新问题最优雅的方法是使用链接列表而不是位置列,我可以通过将其前任链接到其后继者,然后通过在其之间链接将其插入其他位置,从而将ID 2从其旧位置移除新的前任和继任者.这将是每个职位变更的持续和少量更新,它也是我处理变更的首选方式(在我的案例中是Java).然而,这引起了N + 1问题查询正确的顺序-甚至几元,我不得不通过整个名单在最坏的情况下找出正确的顺序.

所以我的问题是:您建议在必要的更新和查询性能之间取得良好的平衡?

到目前为止,我看到两个有希望的方

  1. 是否存在DBMS(理想情况下是OpenSource),它不仅可以处理链接列表,而且还可以处理具有良好性能的链接列表,例如通过使用链接元素的内部索引?

  2. 也许只有一个BLOB可以选择存储整个链接列表!这样的链接列表有多大/它在数据库中使用了多少内存,并且当获取时让我们说1.000.000条目?我正在使用Java + Hibernate以防万一.我想在获取BLOB后处理内存中的整个列表应该非常快!

但当然也欢迎其他想法!

sql indexing recursion linked-list data-structures

28
推荐指数
2
解决办法
4023
查看次数

如何在grails域子类中添加对继承属性的约束

这是我想做的事情:

class A {
  String string
  static constraints = {
    string(maxSize:100)
  }
}

class B extends A {
  static constraints = {
    string(url:true)
  }
}
Run Code Online (Sandbox Code Playgroud)

所以A类应该有一些约束,B应该对同一个属性有相同的附加约束.

我无法让它工作,我可以想象它会与Table-per-Hierarchy概念发生冲突.

所以我尝试通过引入一个带有类B的约束的Command对象来解决这个问题,这些约束可以在类B的构造函数中进行验证.但似乎Command对象只能在控制器中使用(grails一直说没有.validate ()方法).

所以我的问题是:使用grails约束解决这个问题最优雅的方法是什么(不是手动重新实现验证)?可能...

  • 切换到每子类表概念?
  • 以某种方式使Command对象在Domain类中工作?
  • 还有其他方法吗?

编辑:我可以定义子类中的所有约束,重复父类的约束,或者根本不在父类中有约束.但是该解决方案应该适用于同一父类的多个子类(具有不同约束).

grails inheritance constraints subclass command-objects

23
推荐指数
2
解决办法
6392
查看次数

java PermGen空间是整个VM内存的一部分吗?

假设我使用以下参数启动我的Java VM:

-Xms1024m -Xmx1024m -XX:PermSize=512m -XX:MaxPermSize=512m
Run Code Online (Sandbox Code Playgroud)

512m PermGen空间是否会添加到1024m内存中,还是它们的一部分?或者换句话说,我的总内存消耗是1536米还是1024米?在后一种情况下,这是否意味着应用程序只有512m用于PermGen空间以外的目的?

如果这个问题显示对PermGen空间缺乏了解,请告诉我.;-)

java memory memory-management permgen

12
推荐指数
1
解决办法
5113
查看次数

如何对grails应用程序进行并发修改测试

我想运行模拟用户在同一时间Grails应用程序修改某些数据进行测试.

是否有任何插件/工具/机制可以用来有效地完成这项工作?它们不一定是特定的grails.应该可以并行触发多个动作.

我更喜欢在功能级别上运行测试(到目前为止,我正在使用Selenium进行其他测试)以从用户角度查看结果.当然,这除了可以集成测试完成,如果你会推荐上运行集成度并发修改测试以及.

testing grails functional-testing optimistic-locking concurrentmodification

9
推荐指数
1
解决办法
1475
查看次数

在grails中,如何获取所有当前会话的引用?

我想在Grails中列出管理控制器中的所有当前会话.从控制器获取引用集合的最简单方法是什么?

session grails controller httpsession

7
推荐指数
1
解决办法
2957
查看次数

使用Rubberduck单元测试,如何找出多个断言中的哪一个失败?

我正在使用Rubberduck对我的VBA实现进行单元测试.当Assert.IsTrue在一个TestMethod中使用相同类型的多个Assert(例如)时,测试结果并没有告诉我哪个失败,据我所见.

有没有办法找出哪个Assert失败或者这是在Rubberduck未来路线图上?当然我可以添加自己的信息,例如Debug.Print在每个Assert之前使用,但这会导致很多额外的代码.

我知道在一次测试中对于多个Assert有不同的看法,但我选择在我的情况下使用它们,这个讨论已经在其他地方讨论过了 .

vba unit-testing assertions vbe rubberduck

6
推荐指数
1
解决办法
419
查看次数

如何在bootstrap中获取grails数据源createdb属性

我想让我的Bootstrap依赖于grails DataSource.groovy文件中的createdb属性.当设置为"创建"时,如果设置为"更新",则应生成新的主数据,无.

在Grails API中找到了GrailsDataSource,它也有一个方法getCreateDb,但我不知道如何从Bootstrap中为各自的Bootstrap环境访问它.

grails bootstrapping datasource

5
推荐指数
2
解决办法
4450
查看次数

什么时候应该使用grails域类中的N:1关系?

在grails中,我可以实现这样的N:1关系:

class Parent { hasMany = [children:Child] }
class Child  { belongsTo = [parent:Parent] }
Run Code Online (Sandbox Code Playgroud)

现在(如果总是正确使用addTo和removeFrom)我可以通过parent.children获取Parent的子项.

但我也可以在没有hasMany的情况下做到这一点:

class Parent { }
class Child  { belongsTo = [parent:Parent] }
Run Code Online (Sandbox Code Playgroud)

然后我必须使用Child.findAllByParent(parent)来获取所有孩子.

我的问题:如果能以第二种方式查询父母的孩子,我有什么理由可以使用hasMany吗?

我想它有时更容易(也许更快,如果与父母一起渴望获取?)只是引用parent.children,但另一方面,当有几个孩子时,这个List会变得相当长.而我不喜欢的事情还有很多,你总是需要注意addTo或removeFrom,或者在添加一个带有Parent的新Child之后清除会话,以便grails自动执行此操作...

答案是你应该简单地使用hasMany如果有很少的孩子并且如果有很多孩子而不使用它(出于性能原因),或者还有更多的孩子?

orm grails hibernate grails-domain-class

5
推荐指数
1
解决办法
1917
查看次数

如何使用Rubberduck管理本地git存储库

我正在将Rubberduck(版本2.0.13)与本地git存储库结合使用,以便对我的VBA项目进行版本控制.

目前,每次Manage -> Open Existing Repository在Source Control Window中启动Rubberduck时,我都需要重新打开存储库.

有没有更好的方法来处理本地存储库,例如,Rubberduck可以保存此设置吗?我不想使用在线存储库,所以我认为"Unsynced commits"选项卡对我来说无关紧要.

git version-control vba vbe rubberduck

5
推荐指数
1
解决办法
373
查看次数