将标签的信息传递给php并显示在另一个页面中(也可以在另一个页面中更新)?

时间:2013-08-18 10:29:07

标签: php javascript jquery tags

我正在开发一个标签系统: 1.您可以从列表中选择一些标签并将其显示在标签容器中(标签只能选择一次,总和限制为10),不同的标签有不同的颜色。 2.您可以删除标签容器中的一些选定标签 3.将信息传递给php并存储在数据库中。 4.在另一页中显示标签,您可以在此页面中更新所选标签列表。

现在前两个步骤已经通过javascript完成但是我很困惑如何将所选信息传递给php和数据库(内容和颜色),以便它们可以在另一个页面中显示和更新。任何人都可以给我一些建议?感谢。

jsfiddle的链接是http://jsfiddle.net/V9Euk/1015/

这是html:

<ul>
    <li data-val="300"><span class="label label-morning">Morning</span></li>
    <li data-val="301"><span class="label label-afternoon">Afternoon</span></li>
    <li data-val="302"><span class="label label-evening">Evening</span></li>
</ul>

<div class="tagHandler">
    <ul class="tagHandlerContainer" id="tag_handler">
    </ul>
</div>

这是javascript:

$(function(){
    var tags = [];
    function add_tag(that){
        var tag = $(that).text();
        if($.inArray(tag, tags)>=0|| tags.length >= 10) return;
        tags.push(tag);
        var singleValues = $(that).find('span').clone();
        singleValues[0].innerHTML += "&times";
        $("#tag_handler").append(singleValues);/*display the selected tags in the tag_handler with &times style*/
    }

    $("li").click(function(){
        add_tag(this);
       });/*add tags to the tag_container when click the li*/

    $('#tag_handler').on('click', 'span', function(){
        var tag = $(this).text();
        var index = $.inArray(tag, tags);
        tags.splice(index,1);
        $(this).remove();
    });/*remove the tag when click this tag in the tag_container*/
    });

1 个答案:

答案 0 :(得分:0)

首先,jsfiddle链接对我不起作用。

现在,唯一的方法是使用POST / GET等http方法将数据从客户端传递到服务器。实施取决于您最喜欢的或友好且易于使用的界面,所以我的建议是:

您可以创建(动态或不动态)表单(例如,使用隐藏字段)并使用JS更新其值,并通过提交按钮传递数据,这是一个简单的实现。

另一个实现是如果您负责用户选择并动态创建数据结构,则使用Ajax。

在这两种情况下,您都应该使用php验证提交数据的正确性。永远不要相信用户或“假定的”JavaScript限制。