使用JQuery更改innerHTML内容

时间:2012-12-20 07:37:42

标签: javascript jquery if-statement innerhtml

var user;
(function (user) {
    user = {
        dynamicPriceChange: function () {
            $("input[name='user[plan_id]']").change(function (e) {
                var planId = $(this).data('text');
                var durationPlan = $('p#durSubsMY')[0].innerHTML;
                var price = $('.price')[0].innerHTML;
                $('.price').text(planId);
                $('span#Love')[0].innerHTML = price;
                if price == "29" {
                    durationPlan = "per month";
                }
                if price == "261" {
                    durationPlan = "per year";
                }
            });
        }
        jQuery(function () {
            user.dynamicPriceChange();
        });
    })(user)

我试图将durationPlan更改为“每月”,如果价格为29&如果价格是261,则“每年” 但我无法改变这一点。请帮助,我是jQuery的新手。

工作更正代码

    if (price == "29") {
         $('p#durSubsMY')[0].innerHTML = "per month"
        }
    if (price == "261" ){
         $('p#durSubsMY')[0].innerHTML = "per year"
        }

感谢大家的帮助!!!

干杯! : - )

3 个答案:

答案 0 :(得分:2)

if语句的语法错误,您错过了if条件部分括号。

更改

if price == "29" {
       durationPlan = "per month"
}

if price ==“261”{          durationPlan =“每年”    }

if (price == "29") {
      durationPlan = "per month"
}
if (price == "261" ){
     durationPlan = "per year"
}

最后还缺少一个结束括号。

更改

})(user)

}})(user)

答案 1 :(得分:2)

durationPlan只是一个包含元素的innerHTML的变量,它的值不会改变元素内容。尝试改为

    if (price == "29") {
        $('p#durSubsMY')[0].innerHTML = "per month"
    }
    else if (price == "261") {
        $('p#durSubsMY')[0].innerHTML = "per year"
    }

答案 2 :(得分:2)

正如#Adil所提到的,你在if语句中忘记了括号。您也可以尝试使用jQuery库http://api.jquery.com/html/而不是html()中的innerHTML函数。

var planId = $(this).data('text'); 如果您想从输入中获取值,请使用var planId = $(this).val()