繁体   English   中英

javascript将冒号附加到变量

[英]javascript append colon to variable

我有一个JavaScript函数,正在尝试将一些数据发送到另一个php脚本。 我必须将值数组发送到php脚本。 我试图将:附加到javascript函数中的每个值,以便可以使用implode获取我的php脚本中的数组值。 这是我拥有的javascript函数。

$("#update-form").submit(function(e) {
$passdata = "";
    <?php
    for ($i=1; $i <= $total_columns - 1 ; $i++) { 

        printf('$passdata+=$("#slider%d").val().:;' . PHP_EOL, $i);
    }
    ?> 
      if ($(this).is(':not([data-submit="true"])'))
      {
        $('form').append('<input type="hidden" name="foo" value="'+$passdata+'">');
        $('form').data('submit', 'true').submit();
        e.preventDefault();
        return false;
     }
     })

我使用了printf('$passdata+=$("#slider%d").val().:;' . PHP_EOL, $i); 但是,我无法在php脚本中看到该变量。 我也尝试过

printf('$passdata+=$("#slider%d").val()+=:;' . PHP_EOL, $i); 

如何在JavaScript函数中将附加到变量?

看看它在客户端中生成的内容,那是有效的JavaScript吗?

$passdata+=$("#slider1").val().:;

JavaScript不会以这种方式进行字符串连接。

$passdata+=$("#slider1").val() + ":";

如果我是你,我将使用数组和join()

 $passdata.push($("#slider1").val());

然后把它变成一个字符串

var myValue = $passdata.join(":");

更好的是,不要使用PHP生成JavaScript! 只需在元素上添加一个类,然后将单个选择器与map()一起使用即可;

$(".myCommonClass").map( function(){ return this.value; }).get().join(":");

或者只是将多个表单元素名称发布到服务器上,然后像处理表单始终工作一样在服务器上处理多个值。

与其乱砍这种可憎的东西,不如做这样的事情:

向所有滑块添加一个类。 然后:

$(".sliderClassNameHere").map(function(x) {return x.value;}).get().join(":");

或者...只需提交滑块...?

为什么不使用json? 在PHP中,您使用json_encode(),将其放在隐藏输入的值中,然后在javascript中,您对该值使用函数json_decode()。 这就是json的目的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM