使用jquery和onclick事件附加文本

时间:2014-05-23 14:16:40

标签: javascript jquery

我正试图让“$(newList).click(function)...”在下面工作。

这是“列表”创建者的一部分,首先当用户点击“创建列表”按钮时,使用保存按钮创建输入。此输入是以下代码中的newList变量。 保存按钮应该在输入中输入的文本作为页面上的h1标题。

现在,当您在输入字段中输入内容并点击“保存”时,没有任何反应。

请在此处查看整个代码段:http://jsfiddle.net/aortic/4Uhrt/1/。谢谢!

$(document).ready(function(){
  var newList = '<p class="nameList">NAME THE LIST</p><input type="text" name="list"    id="listName"><a href="#newModule" class="save">SAVE</a>';
  var dragItems = '<p class="dragItems">DRAG ITEMS IN HERE</p>';

  $("#createList").click(function(){
    $(this).remove();
    $("#newModule").append(newList);
  }); 

  $(newList).click(function(){
    $(this).remove();
    $("#newModule").append("<h1>" +$("#listName").val()+"</h1>");
    $("#listName").val("");
  });
});

3 个答案:

答案 0 :(得分:1)

看看here ..

$(document).ready(function(){
    var newList = '<div class="add"><p class="nameList">NAME THE LIST</p><input type="text" name="list" id="listName" class="listName"><a href="#newModule" class="save">SAVE</a></div>';
    var dragItems = '<p class="dragItems">DRAG ITEMS IN HERE</p>';

    $("#createList").click(function(){
      $(this).hide();
      $("#newModule").append(newList);
    }); 

    $(document).on('click', '.save', function(){
        $("#newModule").append("<h1>" +$("#listName").val()+"</h1");

        $('.add').remove();
        $('#createList').show();
    });
});

我必须再进行一些测试,但是工作......

答案 1 :(得分:0)

你不能像这样把物品放在jQuery中

  

$(newList)。单击(函数()

你需要在css中输入id或class来获取项目实例。现在你将html放在newList变量中。

答案 2 :(得分:-1)

我使用这样的事件委托:

$(document).ready(function () {
    var newList = '<div><p class="nameList">NAME THE LIST</p><input type="text" name="list" id="listName"><a href="#newModule" class="save">SAVE</a></div>';
    var dragItems = '<p class="dragItems">DRAG ITEMS IN HERE</p>';
    $("#createList").click(function () {
        $(this).remove();
        $("#newModule").append(newList);
    });
    $(document).on('click', '.save', function () {
        $("#newModule").append("<h1>" + $("#listName").val() + "</h1>");$(this).closest('div').remove();
    });
});

<强> jsFiddle example