Jquery knockoutjs-具有可见值的对象的observableArray

Jquery knockoutjs-具有可见值的对象的observableArray,jquery,knockout.js,Jquery,Knockout.js,我正在使用KnockoutJS编写一个小应用程序,用户可以通过在输入字段中键入文本来编辑“产品”,这些字段将自动更新图像顶部的可视文本框。这允许用户在购买例如牌匾之前预览可雕刻线条 这就是我的问题: 我有一个对象(产品)包含一个可观察的array(product.line): jsonData: var initialData = [ { "sku": "PMW", "name": "Premium Genuine Walnut Step Edge Plaque", "plates": [

我正在使用KnockoutJS编写一个小应用程序,用户可以通过在输入字段中键入文本来编辑“产品”,这些字段将自动更新图像顶部的可视文本框。这允许用户在购买例如牌匾之前预览可雕刻线条

这就是我的问题:

我有一个对象(产品)包含一个可观察的array(product.line):

jsonData:

var initialData = [
{
"sku": "PMW",
"name": "Premium Genuine Walnut Step Edge Plaque",
"plates": [
    {
    "sku": "plateSKU",
    "name": "plateName",
    "img": "/images/plates/plateSKU.jpg"},
{
    "sku": "plateSKU2",
    "name": "plateName2",
    "img": "/images/plates/plateSKU.jpg"}
],
"lines": [
    {
    "label": "Line 1",
    "value": "Line 1",
    "type": "input",
    "characterLimit": "146"},
{
    "label": "Line 2",
    "value": "Line 2",
    "type": "input",
    "characterLimit": "156"},
{
    "label": "Line 3",
    "value": "Line 3",
    "type": "submit",
    "characterLimit": "176"}
],
"fonts": [
    {
    "font": "Times New Roman"}
]}
];
product.lines被循环并创建输入框,其默认值由对象设置(值:$data.value)。用户可以编辑这些输入框。我还需要将输入框的值显示为它的更新类型,以作为正在键入内容的预览。当我键入一个新词时,它会在对象中更新,但需要显示该值的字段不会更新

我这里有一段代码:

当通过编辑输入字段更新该值时,我需要编写什么来更新该值


谢谢..

您创建了一个线的observableArray,但是当对象添加到observableArray时,它们的属性不会变得可见,这将由您来实现

我添加了一个具有可观察值的ProductLine对象,并用这些对象初始化了lines集合


希望这能有所帮助。

答案是正确的,但我真的不明白如何使它适应我的代码。以下是我找到解决方案的原因:
var initialData = [
{
"sku": "PMW",
"name": "Premium Genuine Walnut Step Edge Plaque",
"plates": [
    {
    "sku": "plateSKU",
    "name": "plateName",
    "img": "/images/plates/plateSKU.jpg"},
{
    "sku": "plateSKU2",
    "name": "plateName2",
    "img": "/images/plates/plateSKU.jpg"}
],
"lines": [
    {
    "label": "Line 1",
    "value": "Line 1",
    "type": "input",
    "characterLimit": "146"},
{
    "label": "Line 2",
    "value": "Line 2",
    "type": "input",
    "characterLimit": "156"},
{
    "label": "Line 3",
    "value": "Line 3",
    "type": "submit",
    "characterLimit": "176"}
],
"fonts": [
    {
    "font": "Times New Roman"}
]}
];