2010-10-30 66 views
0

iam尝试使用jquery添加项目到ul元素。 的项目将被添加当用户单击添加新项: 这里是我有:jquery添加li项目到ul并提交它与PHP保存在sql

function addFormField() { 
      var id = document.getElementById("id").value; 
      if(id<5){ 
      $("#elem ul").append('<li id="listItem_"'+ id +'>Item Added Nr.'+ id +'</li>'); 
      document.getElementById("id").value = id+1; 
      } 
     ... 

     <div id="elem"> 
     <ul id="test-list"> 
     </ul> 
     </div> 
    <p><a href="#" onClick="addFormField(); return false;">Add New Item</a></p> 

但是当我提交表单,该UI元素是空的,这意味着我没有得到数组,其中用户添加的所有列表项都是..

我怎样才能得到用户添加的项目列表,当他们点击添加按钮!

任何帮助非常感谢,非常感谢

回答

0

你的代码是非常错误的,是jQuery和普通的JavaScript的一些混合物。下面是一个例子,如何要做到:

var id = 1; 
$(".add_item").click(function() { 
    if(id<5){ 
     $("#elem ul").append('<li id="listItem_"'+ id +'>Item Added Nr.'+ id +'</li>'); 
     $.ajax({ url: "addItem.php", item: "listItem_"+ id}); 
     id++; 
    } 
}); 


<div id="elem"> 
    <ul id="test-list"> 
    </ul> 
</div> 
<p><a href="#" class="add_item">Add New Item</a></p> 

每次用户添加你应该执行AJAX调用PHP脚本,例如一个项目您可以使用$.ajax,$.post$.get函数,每次调用PHP脚本时都应该将接收到的项目保存在数据库中。

AJAX - http://api.jquery.com/jQuery.ajax/

再次检查代码。

+0

嗨,感谢您的回复..问题是 我想提交他们使用PHP的形式,并获得提交的表格数据中的新增加的项目.. 我可以添加元素它工作正常,但PHP发布没有得到我添加到列表中的元素.. – 2010-10-30 13:08:10

+0

http://www.wil-linssen.com/demo/jquery-sortable-ajax/这里是一个例子列表,iam添加新项目,但他们不会出现以php形式提交的数组 – 2010-10-30 13:12:38

+0

使用AJAX在每次添加列表项时更新用户记录,或者使用其他不太好的方式在每个添加的项上创建隐藏的输入字段,例如$(“#form”)。append(''); – infinity 2010-10-30 13:26:37