我有一个 html 文档,其中包含:
<li id="li_273" data-pricefield="special" data-pricevalue="0" >
<label class="description" for="element_273">Helium Foil Balloon #1 </label>
<div>
<input type="text" class="element text medium" id="element_273" name="element_273" size="30" value="" />
<input type="hidden" id="element_273_price" name="element_273_price" value="">
</div>
</li>
那么,该区域是一个 ajax 下拉菜单。从那个 ajax/php 下拉列表中,我可以执行一个 onclick 命令——这就是我所拥有的:
'onclick' => 'document.getElementById(\'li_273\').data(\'pricevalue\',\'1.00\');',
这一切都得到了 json_encoded,这是它返回的部分:
"onclick":"document.getElementById('li_273').data('pricevalue','1.00');",
但是,当我从 ajax 菜单中选择某些内容并单击时,我会收到一条错误消息:
Uncaught TypeError: Object #<HTMLLIElement> has no method 'data'
我一生都无法弄清楚这一点,我需要做的只是更新页面上的价格。
更新:这是尝试让它实际计算页面上的 JavaScript 的其余代码:
$('#main_body li[data-pricefield="special"]').delegate('onclick','change', function(e) {
var temp = $(this).attr("id").split('_');
var element_id = temp[1];
var pricedef = $(this).data('pricedef');
if(pricedef == null){
pricedef = 0;
}
$("#li_" + element_id).data("pricevalue",pricedef);
calculate_total_payment();
});
似乎缺少什么?因为它不会更新页面上的总数。