JQuery 1.6.2是.live()函数“有罪”吗?

时间:2013-07-12 15:02:09

标签: javascript jquery html

我正在尝试在<form>中发布<div id="contactform">,但它不起作用。调试器没有提到任何错误,也没有显示任何内容(表单)。

这是我的HTML代码:

<!DOCTYPE html>
<html>
  <head>
    <title>Contacts</title>
    <link rel="stylesheet" href="style/main.css" type="text/css">
    <script src="vendor/couchapp/loader.js"></script>
    <script src="recordedit.js"></script>

  </head>
  <body>
    <div id="account"></div>

    <h1>Contacts</h1>

    <div id="items"><div id="add"><a href="#" class="add">Add Contact</a></div>
      <div id="contacts"></div>
      <div id="contactform"></div>

  </body>
</html>

这是助手“recordedit.js”中的JavaScript代码:

function contactform(doctoedit) {
    var formhtml;
    formhtml =
        '<form name="update" id="update" action="">';

    if (doctoedit) {
        formhtml = formhtml +
        '<input name="docid" id="docid" type="hidden" value="' + doctoedit._id + '"/>';
    }

    formhtml = formhtml +
    '<table>';

    formhtml = formhtml +
    '<tr><td>Name</td>' +
    '<td><input name="name" type="text" id="name" value="' + (doctoedit ?     doctoedit.name : '') +
    '"/></td></tr>';
    formhtml = formhtml +
    '<tr><td>Phone</td>' +
    '<td><input name="phone" type="text" id="phone" value="' + (doctoedit ?     doctoedit.phone : '') +
    '"/></td></tr>';
    formhtml = formhtml + '<tr><td>Email</td>' +
    '<td><input name="email" type="text" id="email" value="' + (doctoedit ? doctoedit.email : '') +
    '"/></td></tr>';

    formhtml = formhtml +
    '</table>' +
    '<input type="submit" name="submit" class="update" value="' + (doctoedit ? 'Update'     : 'Add') + '"/>' +
    '</form>';
    $("#contactform").empty();
    $("#contactform").append(formhtml);
}


$(document).ready(function () {
    updatecontacts();

    $("a.add").live('click', function (event) {
        contactform();
    });
});

1 个答案:

答案 0 :(得分:0)

IT工作:http://jsfiddle.net/RWDRw/

你应该包括jquery:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>