微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

回调问题-jQuery

如何解决回调问题-jQuery

| 我正在使用此插件。一切正常,但是现在我需要进行更改。 回调始终是最后一个条件-
else
,为什么? 例如,这种情况永远不会起作用。有语法错误吗?
($(\"#amount\").val(value) == 400)
脚本
 <script type=\"text/javascript\" charset=\"utf-8\">
     jQuery(\"#SliderSingle\").slider({
         from: 400,to: 2000,step: 200,round: 1,dimension: \'&nbsp;€\',scale: [\'-400€\',\'600€\',\'800€\',\'1000€\',\'1200€\',\'1400€\',\'1600€\',\'1800€\',\'+2000€\'],callback: function(value) {
             if ($(\"#amount\").val(value) == 400) { //not working
                 alert(\"nop\");
                 $(html(\"-400 sdf\"));
             }
             else if ($(\"#amount\").val(value) == 2000) {  //not working
                 alert(\"nopp\");
                 $(html(\"+2000 dfs\"));
             } else {
                 $(html(value)); //always working even if the value chosen is 400 or 2000
             }
         }
     });
 </script>
    

解决方法

        看起来您想要这样:
function(value) {
    if (value == 400) {
        alert(\"nop\");
        $(html(\"-400 sdf\"));
    }
    else if (value == 2000) { 
        alert(\"nopp\");
        $(html(\"+2000 dfs\"));
    } else {
        $(html(value)); //always working even if the value chosen is 400 or 2000
    }
}
尽管
$(html(\"-400 sdf\"));
不起作用。除非您已定义
html()
函数     ,        这是因为您正在执行以下操作:
if ($(\"#amount\").val(value) == 400)
执行.val()会返回数量元素,而不是您刚刚设置的值。 您可以这样做:
if ($(\"#amount\").val(value).val() == 400)
    ,        尝试这个:
($(\"#amount\").val() == 400)
$(\"#amount\").val(value)
您将#amount的值设置为变量\“ value \”,它将再次返回元素#amount。 要在一行中完成,可以使用以下命令:
($(\"#amount\").val(value).val() == 400)
    

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。