我有以下 jquery 语法:
$.post('get_sku_prices', {data:product1.value},function(result)
{
var counter=1
$('input[id=price1]').val(result);
$('input[id=adjustedprice1]').val(result);
alert(result);
counter++;
});
这显然调用get_sku_prices
了返回结果的函数(在本例中为 108)。但是alert(result)
会显示108
将两行插入108
到两个输入中price1
并且adjusted1
不起作用?
这有什么问题?
$('input[id=price1]').val(result);
$('input[id=adjustedprice1]').val(result);
我的问题的第二部分是我想让输入名称动态化。所以我的表单上有多个输入,price1,price2,price3,price4 等,因此我想让数字动态化。
我对循环没有任何问题,这可以正常工作,但是如何使输入动态填充。所以按照我的例子:
$('input[id=price1]').val(result);
$('input[id=price2]').val(result);
$('input[id=price3]').val(result);
$('input[id=price4]').val(result);
是不是很简单:
$('input[id=price+counter]').val(result);
在此先感谢,感谢您的时间和精力。
更新
问题的第一部分现在正在工作,感谢人们:-)
我现在正试图让语法的动态部分正常工作。注释行确实有效。如果我现在想将其更改为动态,则它不起作用。我相信问题出在柜台上。
查看下面的语法,警报会像您期望的那样重复并出现 1、2、3、4 等。
alert(countertwo);
$.post('get_sku_prices', {data:product1.value},function(result)
{
//$('#price1').val(result);
$('#adjustedprice'+counter).val(result);
//$('#adjustedprice1').val(result);
$('#price'+counter).val(result);
});
如果我将语法更改为:
$.post('get_sku_prices', {data:product1.value},function(result)
{
alert(countertwo);
//$('#price1').val(result);
$('#adjustedprice'+counter).val(result);
//$('#adjustedprice1').val(result);
$('#price'+counter).val(result);
});
警报现在在每个警报上显示“20”(20 次)。20 是行数。所以在 $.post 函数中警报不起作用?
关于为什么不以及如何解决这个问题的任何想法?
谢谢。