gpt4 book ai didi

javascript - 通过 javascript 函数将字符串传递给 ajax 时出现问题

转载 作者:行者123 更新时间:2023-12-03 08:06:59 27 4
gpt4 key购买 nike

我在函数中遇到了一些问题,我传递了 2 个参数,其中一个包含字符串“12345.00”,主要问题是在 console.log(string) 上仅返回“12345”。

有没有办法获取整个字符串?

$data = array(
array(
'arg1' => '1',
'arg2' => '123'
),
array(
'arg1' => '2',
'arg2' => '12345.00'
)
);

<button id="openTab">Test</button>

foreach($data as $item){
<script>
$('#openTab').click(function(e){
e.preventDefault();
getValues(<?php echo $item['arg1'](); ?>, <?php echo $item['arg2']; ?>);
});
</script>
}

function getValues(arg1, arg2){
console.log(arg2);
new Ajax.Request("<?php echo $this->getUrl('getValues') ?>", {
method: 'POST',
type: 'json',
parameters: { arg1: arg1, arg2: arg2},
onComplete: function(transport) {
var result = JSON.parse(transport.responseText);
console.log(result);
}
});
}

最佳答案

getValues(<?php echo $item['arg1'](); ?>, <?php echo $item['arg2']; ?>);

这呈现:

getValues(2, 12345.00);

如果你想要 JS 字符串,你需要引用它们:

getValues("<?php echo $item['arg1'](); ?>", "<?php echo $item['arg2']; ?>");

哪个渲染:

getValues("2", "12345.00");

这可以通过查看渲染的 JS 来验证。

您还应该进行防御性编码,并假设返回的数据可能包含引号,例如,在将其渲染到 JS 之前应该对其进行 JavaScript 转义。

重要的是要了解您的文件基本上是一个模板。客户端发生的情况完全取决于它的渲染方式。您可以通过查看源代码或检查元素来检查渲染,以验证浏览器实际遇到的内容。

关于javascript - 通过 javascript 函数将字符串传递给 ajax 时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34338249/

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