我的HTML.erb中有以下代码
<form>
<input id="do" type="hidden" value="0" />
<button type="submit" value="Next">SUBTRACT</button>
</form>
<form>
<input id="do" type="hidden" value="1" />
<button type="submit" value="Next" >ADD</button>
</form>
现在当我单击2个按钮中的任何一个时,我想检查Ruby Controller中输入id =“do”的值。语法是什么样的?
答案 0 :(得分:1)
这应该最好分成控制器中的两个动作,每个表单都会提交(使用action
属性)。
<form action='add'>
<input id="do" type="hidden" value="0" />
<button type="submit" value="Next">SUBTRACT</button>
</form>
<form action='subtract'>
<input id="do" type="hidden" value="1" />
<button type="submit" value="Next" >ADD</button>
</form>
#in your controller
def add
# do the addition processing
end
def subtract
# do the subtraction processing
end
如果你真的需要在1个动作中实现它们,那么你可以使用Rails params
对象。
答案 1 :(得分:0)
您需要设置名称属性,在params散列中将名称属性发送到控制器
<form>
<input id="do" name="subtract" type="hidden" value="0" />
<button type="submit" value="Next">SUBTRACT</button>
</form>
<form>
<input id="do" name="add" type="hidden" value="1" />
<button type="submit" value="Next" >ADD</button>
</form>
在控制器中,
params[:subtract]
或params[:add]
的值取决于点击减去或点击添加。