Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/444.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用javaScript、RubyonRails和/或JQuery自动更新表字段和禁用的函数 版本_Javascript_Jquery_Ruby On Rails_Ruby_Twitter Bootstrap - Fatal编程技术网

使用javaScript、RubyonRails和/或JQuery自动更新表字段和禁用的函数 版本

使用javaScript、RubyonRails和/或JQuery自动更新表字段和禁用的函数 版本,javascript,jquery,ruby-on-rails,ruby,twitter-bootstrap,Javascript,Jquery,Ruby On Rails,Ruby,Twitter Bootstrap,Mac OS:OSX 10.10.2 Ruby:2.2.1p85 Rails:4.2.0 引导式SASS:3.3.4#用于Web UI 自举开关轨:3.0.0#用于切换 上下文 我正在建立一个网站,有人可以创建一个包装活动,使袋无家可归。我正在使用RubyonRails创建这个webapp,使用Bootstrap设计用户界面,并愿意使用JQuery、javaScript、HTML和CSS来获得所需的功能。虽然我对前两种语言的工作知识很少 在用户的事件创建和编辑页面中,我有一个项目列表,一个人可以

Mac OS:OSX 10.10.2
Ruby:2.2.1p85
Rails:4.2.0
引导式SASS:3.3.4#用于Web UI
自举开关轨:3.0.0#用于切换

上下文 我正在建立一个网站,有人可以创建一个包装活动,使袋无家可归。我正在使用RubyonRails创建这个webapp,使用Bootstrap设计用户界面,并愿意使用JQuery、javaScript、HTML和CSS来获得所需的功能。虽然我对前两种语言的工作知识很少

在用户的事件创建和编辑页面中,我有一个项目列表,一个人可以将其添加到他们的行李中。此列表位于表格视图中,如下面的链接所示

所需功能 我想做两件事

  • 当用户输入他们计划包装的行李数量时,我希望能够更新每个项目的“所需数量”列。因此,例如,在上图所示的示例场景中,“筹款”所需的“数量”将为“6500美元”,而“志愿者”将不被添加,“水”将为“1000”,而“食物”将为“1000”
  • 我希望用户能够切换是否在其事件页面上包含项目。因此,在示例图片中,用户希望在他们的活动页面上显示他们正在为他们的活动筹款,并请求为水和食物捐款;但他们不需要志愿者来收拾行李。在这个场景中,我想为“志愿者”行禁用“需要的数量”、“当前拥有”和“要获取的剩余数量”的表单字段 问题
  • 对于上面指定的第一个所需功能:我是否应该将表放在单独的页面上,以便在实际显示表之前填充字段?或者,我更喜欢的功能是,我是否需要在“行李数量”字段后添加一个按钮,单击该按钮可更新表格?我该怎么做呢
  • 对于上面指定的第二个所需功能:当用户将“Include”列切换为“Yes”或“No”时,是否有一种方法可以动态完成此操作?当用户将该行切换为“否”时,如何动态禁用所需的表单字段

  • 如果你需要更多的信息,请告诉我。并提前感谢您的专业知识

    首先,我会把这句话写在评论中,但我还没有足够的声誉来这么做

    好的,有几种方法可以解决你的问题。第一个也是难看的解决方案是,每当有东西被更新时,就重新打开页面。您真的不应该这样做,因为这需要用户点击一个按钮来提交表单,而控制器将再次呈现相同的页面并更新结果

    相反,您希望使用jQuery向表单字段和第二个功能中提到的按钮添加事件侦听器。在这些事件侦听器上,放置一些处理程序来更新所需的字段。如果我不知道您的HTML结构,就很难指导您使用jQuery。正如Santiago所提到的,互联网上有许多教程用于放置事件侦听器和创建适当的处理程序


    另外,你应该考虑Ajax与你的控制器异步通信,以保持前端(用户在浏览器上看到什么)和后端(存储在数据库中的数据)同步。同样,互联网上有很多关于这方面的指南,但是一定要研究一下表单上“remote:true”的Rails功能,以使AJAX过程的设置更容易。

    首先,请尝试自己动手,互联网上有很多指南,当您在代码方面遇到问题时,请向我们展示您编写的代码。。这里有一些非常好的课程谢谢你@SantiagoSuárez,实际上我在过去的几个小时里一直在研究这个话题,然后发布了这个问题并继续研究。我没找到多少。我不知道我是否用了错误的关键字搜索。但是,如果可以的话,我会继续做研究并发布一些东西。谢谢你,@Snags88。我一定会研究这些解决办法。