1

我正在学习 jQuery,我想了解如何重用 ajax json 数据而无需发出第二次请求。

例如

类别选择框:

<select id="Categories">
    <option value="Vegetables">Vegetables</option>
    <option value="Fruits">Fruits</option>
</select>

当使用 更改类别时jQuery("#Categories").change(function(){...,ajax 调用获取请求会提取以下 ajax 数据。

[{"Id":"1","Item":"Apples","PricePerKilo":"10.00"},
 {"Id":"3","Item":"Oranges","PricePerKilo":"12.00"}]

然后产品选择框更新如下:

<select id="Products">
     <option value="1">Apples</option>
     <option value="3">Oranges</option>
</select>

现在我想做的是有一个输入框来输入所需的重量。这样,当输入#weight 的值发生变化时,总标签也会随着价格而更新。

jQuery('#weight').bind('input', function() { 
   jQuery("#total").text( "£ " + (jQuery('#weight').val() * SOMETHING ).toFixed(2) ); 
)};

注意一些东西......这应该是......

data.PricePerKilo WHERE data.Id = jQuery("#products").val();

关于如何使 json 数据可重用的任何想法?

4

1 回答 1

4

您可以将任意数据与 DOM 元素相关联.data()。获取 JSON 后,使用以下内容存储它:

jQuery("#products").data('productData', myData);

然后用这个检索它:

var myData = jQuery("#products").data('productData');
于 2013-03-06T21:52:49.903 回答