gpt4 book ai didi

javascript - 使用 jquery 花式逗号脚本时,数组不返回超过 1,000,000 的默认值

转载 作者:行者123 更新时间:2023-11-30 16:49:43 25 4
gpt4 key购买 nike

我在我的站点中添加了用于我的表单的 jquery 花式逗号脚本。

表单输入字段中的 1 个是价格选项,用户可以在其中输入与他们的需求相关的特定价格,这样做时,他们不需要在价格之间输入逗号,例如,如果他们输入 (900000),它将自动显示为 (900,000),这从 (1,000) 开始。

我有一个正在运行的 PHP 数组脚本,它将在他们可以输入的范围内返回一个默认值集...如下所示。

 $data = array(
array(
'min' => 0,000,
'max' => 100,000,
'value' => 125
),
array(
'min' => 101,000,
'max' => 200,000,
'value' => 195
),
array(
'min' => 201,000,
'max' => 300,000,
'value' => 225
),
array(
'min' => 301,000,
'max' => 400,000,
'value' => 275
),
array(
'min' => 401,000,
'max' => 500,000,
'value' => 325
),
array(
'min' => 501,000,
'max' => 600,000,
'value' => 375
),
array(
'min' => 601,000,
'max' => 700,000,
'value' => 425
),
array(
'min' => 701,000,
'max' => 800,000,
'value' => 475
),
array(
'min' => 801,000,
'max' => 900,000,
'value' => 525
),
array(
'min' => 901,000,
'max' => 999,999,
'value' => 625
),
array(
'min' => 1,000,000,
'max' => 3,000,000,
'value' => 725
),
array(
'min' => 3,000,001,
'max' => 6,000,000,
'value' => 800
),
array(
'min' => 6,000,001,
'max' => 600,000,000,
'value' => 925
)
);

function getAdjustedPrice($price, &$table) {
$priceData = current(array_filter($table, function($value) use(&$price) {
return $value['min'] <= $price && $value['max'] >= $price;
}));
return $priceData['value'];
}

$input = intval($_SESSION["userinput"]);
printf("",
$input,
getAdjustedPrice($input, $data));

我遇到的问题是一旦价格超过 999,999 并且您输入 1,000,000 及以上,因此输入中有两个逗号,数组无法显示为该范围设置的默认价格。

如有任何建议或建议,我们将不胜感激。也许有人有更好的方法来为每个范围设置默认值,也许是基于 jquery 或 javascript 的选项?

我仍在学习最基础的知识,所以请原谅我对事物的无知或愚蠢的做法!

----更新(添加用于应用逗号的代码)

--------------------------  First Section


function addCommas(val) {
val = val.replace(/,/g, "");
var regEx = /(\d+)(\d{3})/;
while (regEx.test(val)) {
val = val.replace(regEx, '$1' + ',' + '$2');
}
return val;
};;


--------------------------- Second section


// Fancy commas
$(this).keyup(function() {
var newValue = addCommas($(this).val());
$(this).val(addCommas(newValue));
if (PropValueS.val().indexOf('\u00A3') == -1) {
PropValueS.val('\u00A3' + PropValueS.val());
}
});

});

最佳答案

我不太确定你想用逗号做什么,因为谷歌搜索 jquery 花式逗号脚本没有产生任何结果。

我认为正在发生的事情是您的数据没有按照您认为的方式进行解释。我不太精通 PHP,但是

'min' => 3,000,001

很可能向数组添加三个条目,min => 3000001

此外,作为建议,我将按以下方式处理您的数据逻辑:

var inputValue = 220000; // Change to the value extracted from the input form
var value = 0;

if(inputValue >= 0 && inputValue < 100000) {
value = 125;
}
else if(inputValue >= 100000 && inputValue < 200000) {
value = 195;
}
else if(inputValue >= 200000 && inputValue < 300000) {
value = 225;
}
...

关于javascript - 使用 jquery 花式逗号脚本时,数组不返回超过 1,000,000 的默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30721063/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com