JQuery:将表单预先添加到

时间:2012-07-16 00:29:30

标签: jquery forms html-table var prepend

我有一个html表,我想在每个tr中添加一个表单。我写了这个:

<script>

var bform = '<form name="input" action="html_form_action.asp" method="get"><input type="hidden" value="event"></input><input type="submit" value="Submit" /></from>';

$('tr').prepend(bform);

</script>

但它似乎对我不起作用,也没有在控制台中抛出错误。

有人能指出我正确的方向吗?

2 个答案:

答案 0 :(得分:1)

确保在jQuery和DOM加载后执行它:

$(function(){
    $('tr').prepend(bform);
});

或:

$(document).ready(function(){
    $('tr').prepend(bform);
});

此外,您的结束</form>代码为</from>

时会出现拼写错误

答案 1 :(得分:1)

trtd添加到您的bform

var bform = '<tr><td> YOUR FORM HERE</td></tr>'

当您将字符串添加到tr时,您将插入table内,因此,您当前的代码无效:

<table>
    <form name="input" action="html_form_action.asp" method="get">
        <input type="hidden" value="event"></input>
        <input type="submit" value="Submit" />
    </from>';
    ^^^^^ INVALID HTML ^^^^^

    <tr>
        <td>CONTENT</td>
    </tr>
</table>

正如Blender所说,请确保将代码放在jQuery(document).ready(function($){})

此外,您无需关闭inputs,因此,两者都是有效代码:

<input type="hidden" value="event">
<input type="submit" value="Submit">