单击显示并将其更改为文本框

时间:2011-02-23 08:23:10

标签: jquery

我刚开始开发网络。我目前陷入一个不确定如何解决它的问题。

我有2页,一个供我输入产品名称和价格。点击保存按钮后,它会保存到数据库,成功保存数据后,它会加载回页面供我继续输入数据。当我单击报告按钮时,我将转到报告页面(这是问题开始的地方。)我可以看到带有列和行的表格,其中包含数据:产品名称和价格。我想在这里做的是按照我喜欢的方式编辑数据。我点击它将改变到文本框的产品,仍然将数据保存在文本框中(意思是,它不再是只读的)。同样的价格。我以前做的是:每行我都有复选框,单击复选框,我将使用这样的jquery来改变。

$("input[name^='chk']").click(function() {
        $("input[name^='chk']").each(function() {
        if($(this).is(':checked')) {
            var i = $(this).val();
            $("#cost"+i).attr('readonly', false);
            $("#qty"+i).attr('readonly', false);
        }else{
            var i = $(this).val();
            $("#cost"+i).attr('readonly', true);
            $("#qty"+i).attr('readonly', true);
        }
        }); 
    });

但我现在不想要的是即使在开头也不要在文本框中显示数据。单击它,然后它只会更改为文本框。我也不希望也有复选框。它使我的页面看起来很丑陋。我在几个网站上看到过这种方式,但我不知道该怎么做。如果有人能帮我解决这个问题,我非常感谢你的帮助

1 个答案:

答案 0 :(得分:0)

您可以使用jQuery隐藏和显示元素。只需将文本框和显示的数据放在页面上,然后使用jQuery的.hide()隐藏文本框。当用户单击显示的数据时,您可以隐藏数据,并在元素的.click()中定义的单击函数中使用.show()显示文本框。

另一种方法是在用户点击显示的数据后动态插入文本框,例如在jQuery中使用.html()。

你需要学习jQuery文档一段时间才能完成这样的事情,但是一旦掌握了它就很容易。