0

私は自分の中に関数を持っていますdocument.ready

  function changeLabel (labelname, newValue) {
    if ($(labelname).html().indexOf("span class") > -1) {
        $(labelname).html("<span class='error'>" + newValue + "</span>");
    } else {
        $(labelname).html(newValue);
    }
  }

しかし、今、私のfirebugにエラーメッセージが表示されます:

TypeError: $(labelname).html()null

何が問題なのかよくわかりません。関数を使用すると次のようになります。

changeLabel ("#raffle label[for='first_name']",'Firstname *:');
4

2 に答える 2

0

jqueryを使用してindex()..これを試してください

if ($(labelname).index($("span.error")) > -1) {
    $(labelname).html("<span class='error'>" + newValue + "</span>");
} else {
    $(labelname).html(newValue);
}
于 2013-03-14T11:38:18.693 に答える
0

セレクターを'label[for="first_name"]','#raffle'これに変更すると、ラベルを探す場所が変わります。ラベルのみを探している場合は#raffle、セレクターを次のように置き換えます。

$(labelname,'#raffle').html();

changeLabel('label[for="first_name"]','new value');

問題が解決するかどうかはわかりません。ただし、セレクターが間違っている可能性があるため、そうする場合があります。

于 2013-03-14T11:34:21.387 に答える