我必须在textarea中写,但我有两个“id”相等,因为我创建了更改数据的表单。 如果表格是:
<form method="GET" name="formparam" id="formparam" action="${nextstep}">
<label>ID</label></td><td>
<textarea class="expand" name="inputp'+v+'_id" id="inputp'+v+'_id">
</textarea>
</form>
对于Call我使用这个脚本:
function qs(key) {
key = key.replace(/[*+?^$.\[\]{}()|\\\/]/g, "\\$&"); // escape RegEx control chars
var match = location.search.match(new RegExp("[?&]" + key + "=([^&]+)(&|$)"));
return match && decodeURIComponent(match[1].replace(/\+/g, " "));
}
function Pcompila(v){
var i;
var Listparam=['_id','_description','_info','_type','_value'];
for (i=0;i<Listparam.length;i++)
{
var a ='inputp'+v+ Listparam[i];
alert(a);
if (location.search) {
var p=qs(a);
alert(p);
$('#'+a).text(p);
}
}
return;
}
$('#'+a).text(p);
错误,因为不写。
如何改变以表格形式呼叫身份???
我试着用这个:
$("formparam").$('#'+a).text(p);
这绝对错误!!!
答案 0 :(得分:0)
我认为问题在于您更新textarea的值。
应该是:
$('#'+a).val(p);
请确保没有2个元素具有相同的ID。
编辑:如果你真的需要多个元素来拥有相同的id,你将不得不经历一个不同的路径。
$('#formparam').find('textarea.expand').val(p);
答案 1 :(得分:0)
$("formparam")
不正确,因为formparam
不是元素类型,应该#formparam
来搜索ID。在另一个元素中搜索一个元素的方法是使用.find()
,例如$("#formparam").find("#"+a)
。但由于ID必须是唯一的,因此您并不需要说明在哪里搜索它们,因此您可以使用$("#"+a)
,就像Pulkit Mittal的回答一样。