0

このページですばらしい jQuery コードを見つけ、自分のサイトで使用しました。それはうまくいきます。jQuery を使用したフォームとライブ プレビュー。しかし、データベースを更新してフォームを再度開くと、フォームフィールドにテキストが正しく配置されますが、フィールドをクリックしてクリックした後にのみプレビューが開始されます。関数が mysqli クエリの直後にプレビューを開始するように強制するにはどうすればよいですか?

    $(document).ready(function() {
    var commentNode = $('#lp-comment'),
        contactNode = $('#lp-contact'),
        contact = $('#contact'),
        website = $('#website');

    //comment...easy
    $('#live-preview-form input, #live-preview-form textarea').bind('blur keyup',function() {
        //comment
        commentNode.text($('#comment').val());
        commentNode.html($('#lp-comment').html().replace(/\n/g,'<br />'));
        contactNode.text(contact.val() + ' says:');

    });
});

	$(document).ready(function() {
	var commentNode = $('#lp-comment'),
		contactNode = $('#lp-contact'),
		contact = $('#contact'),
		website = $('#website');
	
	//comment...easy
	$('#live-preview-form input, #live-preview-form textarea').bind('blur keyup',function() {
		//comment
		commentNode.text($('#comment').val());
		commentNode.html($('#lp-comment').html().replace(/\n/g,'<br />'));
		contactNode.text(contact.val() + ' says:');
		
		

		
		
	});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div id="live-preview-form" class="lp-block field">
 <input name="contact" class="input" placeholder="Kontaktperson" type="text" id="contact" value ="<?php echo $contact ?>" required />
 </div>

<div id="live-preview-display" class="lp-block">
	
	<div id="lp-contact"></div>
	<div id="lp-comment"></div>
</div>

4

1 に答える 1

0

ページがリロードされたとき、またはデータが更新されたときはいつでも、プレビューを更新する必要があります。$(document).readyおよび で呼び出せるように、プレビューを更新する関数を作成することを検討してonblurくださいonkeyup

$(document).ready(function() {
  updatePreview();

  $('#live-preview-form input, #live-preview-form textarea').bind('blur keyup',updatePreview);
});

function updatePreview(){
  var commentNode = $('#lp-comment'),
      contactNode = $('#lp-contact'),
      contact = $('#contact');

  commentNode.text($('#comment').val());
  commentNode.html($('#lp-comment').html().replace(/\n/g,'<br />'));
  contactNode.text(contact.val() + ' says:');

}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div id="live-preview-form" class="lp-block field">
 <input name="contact" class="input" placeholder="Kontaktperson" type="text" id="contact" value ="<?php echo $contact ?>" required />
 </div>

<div id="live-preview-display" class="lp-block">
	
	<div id="lp-contact"></div>
	<div id="lp-comment"></div>
</div>

于 2015-04-06T21:35:24.287 に答える