为什么AJAX只在某些地方替换我的变量?

时间:2017-06-29 22:58:03

标签: php jquery

我有以下AJAX代码,它取代了任何类" percentreplacer"使用"百分比"中的数据MYSQL数据库的列:

<script type='text/javascript'>
$(document).ready(function () {
    $('#functionsquestionform2').on('submit', function(e) {
        e.preventDefault();
        $.ajax({  
            url :  "aplaygroundajaxtest.php",
            type: "POST",
            data: $(this).serialize(),
            success: function (data) {
$(".percentreplace").text(data.percent); 
            },
            });
        });
});
</script>

在我的脚本的另一部分中,我有这段PHP代码:

 <?php echo '<span class="percentreplace">'.$data['FunctionsPercent'].'</span>'; ?>

当我运行代码时,顶部的AJAX代码成功地将上面的span替换为存储在数据库中的百分比值(例如&#34; 6&#34;)。

稍后在我的代码中,我尝试使用下面显示的JQuery脚本将此百分比设置为变量:

<script type='text/javascript'>
$(function(){    
var carouselbutton1percentage='<?php echo '<span class="percentreplace">'.$data['FunctionsPercent'].'</span>'; ?>' ....[cont'd]

然而,在这里,不是用百分比替换整个PHP代码段(让我们说6),而是将变量carouselbutton1percentage设置为<span class="percentreplace">6</span>我希望标签被剥离就像他们在前者那样。我猜这与引号有关,但我已经玩了很多,我无法弄清楚要改变什么。

非常感谢任何帮助!

由于

2 个答案:

答案 0 :(得分:0)

我可能会遗漏一些东西。但是,我不会存储包含看起来像PHP和jquery的字符的字符串,而是想要实际更新该html元素,就像在AJAX响应块中一样。所以..

$( “percentreplace”)文本( '6')。

var carouselbutton1percentage = 6;

$( “percentreplace”)文本(carouselbutton1percentage)。

但是,也许我误解了。

答案 1 :(得分:0)

我认为你需要正确地逃避你的字符串?

var carouselbutton1percentage='<?php echo \'<span class="percentreplace">\'.$data[\'FunctionsPercent\'].\'</span>\'‌​; ?>';