使用jQuery 动态创建隐藏输入表单字段的最简单方法是什么?
你怎么能有一个简单形式的隐藏领域?
以下代码:
= simple_form_for @movie do |f|
= f.hidden :title, "some value"
= f.button :submit
Run Code Online (Sandbox Code Playgroud)
导致此错误:
undefined method `hidden' for #SimpleForm::FormBuilder:0x000001042b7cd0
Run Code Online (Sandbox Code Playgroud) ruby-on-rails hidden-field form-for ruby-on-rails-3 simple-form
我想在铁轨上做这样的事情
以下是我目前在rails中的内容:
<%= form_for @order do |f| %>
<%= f.hidden_field :service, "test" %>
<%= f.submit %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
但后来我得到了这个错误:
undefined method `merge' for "test":String
Run Code Online (Sandbox Code Playgroud)
如何在rails中的hidden_field中传递值?
我正在使用包含List作为属性的模型.我正在使用从SQL Server中获取的项目填充此列表.我希望List隐藏在视图中并传递给POST操作.稍后我可能想要使用jQuery向此List添加更多项目,这使得数组不适合稍后进行扩展.通常你会用
@Html.HiddenFor(model => model.MyList)
Run Code Online (Sandbox Code Playgroud)
要完成此功能,但由于某种原因,POST中的List始终为null.
很简单的问题,任何人都知道为什么MVC会像这样?
我已经读过这篇文章,但我是RoR的新手,所以我在理解它时遇到了一些麻烦.我正在使用表单来创建新的请求记录,并且我需要发送的所有变量都已存在.这是我需要发送的数据(这是一个do循环):
:user_id => w[:requesteeID]
:requesteeName => current_user.name
:requesteeEmail => current_user.email
:info => e
Run Code Online (Sandbox Code Playgroud)
这是我的表单,到目前为止工作,但只为所有内容发送NULL值:
<% form_for(:request, :url => requests_path) do |f| %>
<div class="actions">
<%= f.submit e %>
</div>
<% end %>
Run Code Online (Sandbox Code Playgroud)
如何使用hidden_fields发送我已有的数据?谢谢阅读.
拥有一个具有多个具有相同名称的"隐藏"控件元素的HTML表单是否合法?我希望在服务器上获取所有这些元素的值.如果是合法的,主流浏览器是否正确实现了行为?
我正在尝试将数组传递给hidden_field.
以下用户有3个角色[2,4,5]
>> u = User.find_by_login("lesa")
=> #<User id: 5, login: "lesa", email: "lesa.beaupry@gmail.com", crypted_password: "0f2776e68f1054a2678ad69a3b28e35ad9f42078", salt: "f02ef9e00d16f1b9f82dfcc488fdf96bf5aab4a8", created_at: "2009-12-29 15:15:51", updated_at: "2010-01-06 06:27:16", remember_token: nil, remember_token_expires_at: nil>
>> u.roles.map(&:id)
=> [2, 4, 5]
Run Code Online (Sandbox Code Playgroud)
用户/ edit.html.erb
<% form_for @user do |f| -%>
<%= f.hidden_field :role_ids, :value => @user.roles.map(&:id) %>
Run Code Online (Sandbox Code Playgroud)
当我提交我的编辑表单时,我收到一个错误:UsersController中的ActiveRecord :: RecordNotFound #update" 无法找到ID = 245的角色 "
如何将数组传递给hidden_field?
在Yii2中,我试图构建隐藏的输入
echo $form->field($model, 'hidden1')->hiddenInput()->label(false);
Run Code Online (Sandbox Code Playgroud)
但我也需要它有一些价值选择,我该怎么做?
我试图1000从这样的隐藏中读取示例String <div>:
<div id="hidden_div" style="visibility:hidden">1000</div>
Run Code Online (Sandbox Code Playgroud)
我知道这WebElement.getText()对Selenium 2(WebDriver)中的隐藏元素不起作用,所以我搜索了解决方案(比如这个),显然以下代码应该可以工作:
WebElement hiddenDiv = seleniumDriver.findElement(By.id("hidden_div"));
String n = hiddenDiv.getText(); // does not work (returns "" as expected)
String script = "return arguments[0].innerText";
n = (String) ((JavascriptExecutor) driver).executeScript(script, hiddenDiv);
Run Code Online (Sandbox Code Playgroud)
但它对我不起作用,变量n总是最终的结果null.我究竟做错了什么?
我在表单标记中有一个简单的输入字段:
<body>
<form action="#">
<label>Input</label>
<input type="hidden" id="foo" name="foo" />
</form>
</body>
Run Code Online (Sandbox Code Playgroud)
我试图从js文件中设置此值:
$(document).ready(function(){
$('#foo').val('foo')
})
Run Code Online (Sandbox Code Playgroud)
但是在html源代码中,根本没有设置该属性.如果我尝试将输入类型设置为"按钮"或其他任何东西,它就可以工作.我只是不能用hidden输入字段来做.我究竟做错了什么?
hidden-field ×10
forms ×4
jquery ×2
arrays ×1
asp.net ×1
c# ×1
form-for ×1
java ×1
javascript ×1
ruby ×1
simple-form ×1
yii2 ×1