用于 ruby on Rails 的 jquery
我想使用此代码 http://gist.github.com/110410 将 Prototype 转储到支持 jQuery,但我确实有一个问题。
这是我的 HTML(link_to 生成的链接):
<a onclick="var f = document.createElement('form'); f.style.display = 'none'; this.parentNode.appendChild(f); f.method = 'POST'; f.action = this.href;var s = document.createElement('input'); s.setAttribute('type', 'hidden'); s.setAttribute('name', 'authenticity_token'); s.setAttribute('value', 'Mi6RcR6YDyvg2uNwGrpbeIJutSHa2fYboU37wSDE7AU='); f.appendChild(s);f.submit();return false;" class="post add_to_cart " href="/line_items?product_id=547">Add to cart</a>
问题:
一切正常,除了页面重新加载之外。我怀疑提交通过会导致页面重新加载。
有没有一种优雅的方法来防止这种情况发生?返回假;在这种情况下似乎没有削减它。
I am tying to use this code http://gist.github.com/110410 to dump Prototype in favor of jQuery but I do have a problem.
This is my HTML (a link_to generated link):
<a onclick="var f = document.createElement('form'); f.style.display = 'none'; this.parentNode.appendChild(f); f.method = 'POST'; f.action = this.href;var s = document.createElement('input'); s.setAttribute('type', 'hidden'); s.setAttribute('name', 'authenticity_token'); s.setAttribute('value', 'Mi6RcR6YDyvg2uNwGrpbeIJutSHa2fYboU37wSDE7AU='); f.appendChild(s);f.submit();return false;" class="post add_to_cart " href="/line_items?product_id=547">Add to cart</a>
Issue:
Everything works as it should except that the page does a reload. I suspect that the submit gets thru which causes a page reload.
Is there an elegant way to prevent that ? return false; doesn't seem to cut it in this case.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
嗯。使用这个(jQuery):
我将真实性令牌放入锚点的 rel attr 中,假设该令牌对于产品是唯一的。
更新
因为显然 Rails 根本无法控制任何事情:
ew. Use this (jQuery):
I put the authenticity token in the rel attr for the anchor assuming the token is unique to the product.
UPDATE
Because apparently Rails gives you no control of anything at all: