使用getElementById在jquery附加表单提交

时间:2012-12-21 06:30:29

标签: javascript jquery ajax append

单击链接时getElementByid('projectsearch'+id)不起作用。关于这个还能做什么?一旦生成,我就不知道如何发送表单 - 任何想法?

var i;
for (i = 0; i < data.data.length; ++i) {            
    console.log(i);
    var divCreator ='';

    var str='projectsearch' + i; 

    divCreator+='<div id="grupo'+i+'">';
    divCreator+='<div>';
    divCreator+='<div id="tipo_'+i+'"></div>';
    divCreator+='<div id="tipo_arq_abajo'+i+'"></div>';
    divCreator+='</div>';
    divCreator+='<div id="fotoproyectos'+i+'" ><img src="' + data.data[i].path + '" height="128" width="160"></div>';
    divCreator+='<div id="nombreproyectos'+i+'" ><form method="post" name="projectsearch'+i+'" id="projectsearch'+ i +'" action="proyectos_arq.php">';
    divCreator+='<span style="cursor: pointer;" onclick="document.getElementById('projectsearch'+id).submit()">"'+ data.data[i].projectName +'"</span>'
    divCreator+='<input name="project_id" type="hidden" id="project_id" value="' + data.data[i].projectId + '">';
    divCreator+='</form></div>';
    divCreator+='</div>';
    divCreator+='</div><br><br>';

    //$("#contiene-pro").append(divCreator);
    $("#testDiv").append(divCreator);
};

3 个答案:

答案 0 :(得分:2)

我认为应该是

document.getElementById('projectsearch'+i).submit() // not id...

并转义你的报价

如果您尝试提交刚刚创建的表单... 我在你的问题中找不到“id”变量......

答案 1 :(得分:1)

您创建:

var str='projectsearch' + i; 

然后永远不要使用它。

稍后您会在代码中找到:

divCreator+='<span style="cursor: pointer;" onclick="document.getElementById('projectsearch'+id).submit()">"'+ data.data[i].projectName +'"</span>'

我认为你的意思是:

divCreator+='<span style="cursor: pointer;" onclick="document.getElementById(' + str + ').submit()">"'+ data.data[i].projectName +'"</span>';

使用您创建的str变量作为getElementById()

的ID

答案 2 :(得分:-1)

请在控制台中查看相应的div ID,并尝试使用此语法获取值

var element=  $("#projectsearch"+id);

var element=document.getElementById("projectsearch"+id);