<span>
タグは、ユーザーがクリックすると削除されるdiv内にあります。正常に動作します。.text()経由で変数を保存することはできません
変数内に.text()
をdiv内に格納したいとします。問題は、更新されたのが保存されないということです。
これを削除するには、jsFiddleの単語をクリックしてください。
ご覧のとおり、content
変数は、新しいテキストではなく古いテキストを返します。
更新されたテキストで変数を保存するにはどうすればよいですか?
のjQuery:
jQuery(document).ready(function() {
jQuery(document).on("mousedown", ".hello span", function() {
// don't add full stop at the end of sentence if it already ends with
var endChars = [".", "?", "!"];
jQuery(this).fadeOut(function(){
var parentObj = jQuery(this).parent();
jQuery(this).remove();
var text = parentObj.find("span").first().html();
parentObj.find("span").first().html(ta_capitalizeFirstLetter(text));
text = parentObj.find("span").last().html();
if (endChars.indexOf(text.slice(-1)) == -1)
{
parentObj.find("span").last().html(text+".");
}
});
var content = jQuery(this).parent().parent().find('.hello').text();
alert(content);
});
});
私は質問を理解しようとしています。デモの各クリックで何が起こるべきかを追加できますか? – Tushar
@ Tusharかなり簡単です。 jsFiddleで 'lorem'という単語をクリックすると、アラートボックスに' Hello world lorem'ではなく 'Hello world'が表示されます。それは理にかなっていますか?それは変数 'content'の誤りです。 –
私はこのエラーを受け取りました.Uncaught ReferenceError:ta_capitalizeFirstLetterは定義されていません。 –