0

如果我有这个滑块的输入必须有一个数组作为 id tag ,我如何在我初始化和构建滑块的脚本上调用标签?如果输入不是数组,则此代码有效,但我需要“数量”是数组。

/////////////////////SLIDER !!!!!!!!!!!!!!!!!!!!!!!!!!! 

< !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
   < script>

    var valueslider= "<?= $AnswerValue ?>";
    var mysliderdef= valueslider.split(";");
          var len = mysliderdef.length-1;
                    var i =0;
                        var qid="<?= $QuestionID ?>";
                    var answerid="<?= $AnswerID?>";
                    **$( "#amount"+qid).**val( mysliderdef[0]);//<-My tag name problem

                    $( "#slider" ).slider({ 
                    min: 1,
                    max: mysliderdef.length,                                        
                    slide: function( event, ui ) {

                    **$( "#amount"+qid).**val( mysliderdef[ui.value-1]); //<- My tag name problem                       
                                            }//end slide event
                                            });//end slider ini method builder


                });// end JavaScript document function  

< /script>


    <!--SLIDER-->   
        <?php if($row_questionset['Constructor']=="Slider"){?>

< input type="text" id="amount< ?= $row_Answer['QuestionIDFK'];?>[]" name="amount[]" />

    < div id="slider" name="<?php echo $row_Answer['AnswerValue']; ?>" >< /div>
                                            <?php }  ?>     

                                            <?php }  ?> 
                        <!--/SLIDER-->  

我试过了

$( "#amount"+qid+[]).val( mysliderdef[ui.value-1]); 

$( "#amount"+qid[]).val( mysliderdef[ui.value-1]); 

 var qid="<?= $QuestionID ?>"[];
$( "#amount"+qid).val( mysliderdef[ui.value-1]); 

我该如何编写这种语法?

4

1 回答 1

0

不要混合使用 JavaScript 和 PHP,否则你会发疯的——永远无法确定何时执行逻辑的哪一部分。

您的问题是您在一个循环中回显了许多段落和滑块 div。请注意,您为元素提供的 id 在整个文档中必须是唯一的。您已使用计数器值正确修改了输入 id:(id="amount<?= $row_Answer['QuestionIDFK'];?>[]"省略[],顺便说一句),但没有为id="slider". 也可以在那里使用问题 ID。

现在使用类似的answervalue。不要在 JS 代码中间直接输出问题和答案 ID,而在 JSON 配置对象中只输出一次(使用json_encode)。此配置对象应包含所有必要的值,按 questionid 排序。用 循环遍历该对象$.each,并使用相应的值初始化滑块(具有唯一 ID 的滑块)。

于 2012-12-14T14:13:47.020 回答