显示用户可以在类似于gmail中的“标记重要”星标的网页上点击/关闭的星形有什么好方法?此外,类似于stackoverflow中的星号(在这里到你的左边!)
我正在使用jQuery和rails。
前端问题: 在jQuery中维护这个的好方法是什么? 也许有一个重要的标记,然后可能添加一个点击监听器? 我还需要记住状态,然后突出显示明星。
服务器端问题: 我的另一个问题是关于路由。当用户点击它时,它将POST到服务器。
它应该有两条路线吗?
POST ./email/mark_important
POST ./email/unmark_important
或者它应该有一条路线吗?
POST ./email/toggle_importance
我专注于清洁代码&可维护性。谢谢!
答案 0 :(得分:1)
对于客户端,我在css类上使用切换(例如"选中"和"未选中")。切换发生后,我从元素中读取生成的CSS,并使用on / off参数(原始布尔值)调用唯一的服务器端方法来保存状态。
这样,即使用户在图像上点击了很多时间(并且非常快),您也总是向服务器发送正确的值。最后一次电话会让事情变得正确。