在jQuery中使用动态id为隐藏字段赋值
Assign values to hidden fields in jQuery with dynamic id?
好的,我得到了这个表。该表是通过后端循环动态生成的。像这样:
<%int iterator = 0;
for(Iterator it = pd.getEntries().iterator();it.hasNext();){
EntryData entry = (EntryData)it.next();
%>
<tr>
<td><div id="oldvalue1_<%=iterator%>" class="editable_select"><%=entry.getIdentifiertype()%></div></td>
<td><input type="hidden" id="newValue1_<%=iterator%>" value=""></td>
<td></td>
<td><div id="oldvalue2_<%=iterator%>" class="editable"" ><%=entry.getIdentifier()%></div>
<input type="hidden" id="newValue2_<%=iterator%>" value=""></td>
<td></td>
</tr>
<% iterator++;} %>
我想在这张表上完成的是"就地编辑",有点……我在jQuery中得到了这个函数,它将oldvalue1_*变成一个选择框,如下所示:
$(window).load(function(){
var clickFunction = function(){
var id = $(this).attr("id");
var smallId = id.substr(10);//yeah, this is a temporary hack...
var select = '<select name="select" id="select" onChange="THIS IS WHAT I NEED">';
var options = ["ITEMNUMBER", "GROUP", "ALLITEMS"];
for(var i = 0; i < options.length;i++)
select += '<option value="'+options[i]+'">'+options[i]+'</option>';
select += '</select>';
$(this).html(select);
$(this).unbind('click',clickFunction);
}
$("div.editable_select").bind('click',clickFunction);
});
我想得到的帮助是使用onChange传递新的,选择值隐藏。我有点得到了正确的心态在这里,我认为:onChange="$("#newValue1_"+smallId).value($(this).val());">但是太多的"s"answers"s"简直要了我的命,根本行不通。那么,我该怎么办呢?
对于另一个表元素,我也得到了这个:
$(document).ready(function(){
$("div.editable").click(function(){
var newInput = "<input type ='text' class='newInput' value='""+$(this).text()+"'">";
$(this).html(newInput);
var id = $(this).attr("id");
$("input.newInput").focus();
$("input.newInput").keydown(function(event){
if(event.which == 13){
var lastDigit = id.substr(10);//Yeah...
var valNumber = id.substr(8);//These are ugly, im working on it so don't hate on me :P
var value = $(this).val();
$(this).parent().text(value);
if(valNumber == 2){
var changedtext = $("#editable2_"+lastdigit).val();//This right
$("newValue2_"+lastDigit).val(changedtext);// here wont work
}
}
});
});
这里也是我的问题,将值传递给它们的隐藏字段。我检查了alert函数,我得到了var的值,这只是我错过的最后一点。我将感激所有的帮助,我真的需要它在这里。而且,请记住,我对jQuery是一个彻头彻尾的新手,所以像"你应该使用。[插入函数名]"这样的回答不会有多大帮助。
多谢了!& lt; 3(我不知道如何得到时髦的颜色在代码,我很抱歉)
就不能在最后一行少一个#吗?
$("#newValue2_"+lastDigit).val(changedtext);
不是$("newValue2_"+lastDigit).val(changedtext);// here wont work
你差一点就成功了。
onChange="$("#newValue1_"+smallId).value($(this).val());">
你需要记住的是对onchange holder使用一组引号,对其中的任何内容使用另一组引号。所以…
<select name="dothis" onChange="$('#newValue1_'+smallId+'').val($(this).val());">
应该工作。我拉了一下,以防万一。http://jsfiddle.net/MatthewDavis/Rb3cs/
编辑:我看到你看到的关于生成行。我在这里更新了fiddle: http://jsfiddle.net/MatthewDavis/Rb3cs/1/,并删除了创建选择的变量中的双引号,并用xml表示代替它们。
似乎有效。
编辑我的编辑:同样,对于那些需要帮助但不想看小提琴的人,这里是定义select的行。
var select = "<select name="dothis" onChange="$('#newValue1_'+smallId+'').val($(this).val());"><option value='one'>1</option><option value='two'>2</option><option value='three'>3</option></select>";
- JavaScript 检查隐藏字段中的值并将其设置为隐藏字段值
- 带有验证和隐藏字段值的提交按钮
- 主干窗体隐藏字段未呈现
- 清除以前的$_GET值或不获取仅隐藏字段的值
- 添加和删除隐藏字段数组中的值,而不提交表单
- 在控制器上使用“$watch”时,为什么不更新此隐藏字段
- 将选项值附加到隐藏字段
- JQuery获取隐藏字段的值
- MVC+访问控制器中的隐藏字段
- ASP.net Javascript函数中的隐藏字段为null
- 在第一页加载时隐藏字段,而不是在php发布之后
- 表单使用js、html,而不是隐藏字段
- 如何根据文本长度立即显示和隐藏字段?-JQuery
- 在选择更改时显示大于/小于的隐藏字段集
- 如何获取多个复选框值并分配给隐藏字段
- 将会话登录页存储在cookie中以进行表单解析(通过隐藏字段)
- 将布尔值存储在隐藏字段中以进行表单处理
- 如何将多个/不同的隐藏字段插入 XML
- 如何通过 JSP 代码将隐藏字段(Javascript)插入 XML
- 如何使用Java在Selenium WebDriver的隐藏字段中键入一些文本