1

jqueryを使用してタグを更新しようとして<p>いますが、[送信]ボタンをクリックすると、innerHTMLで挿入しているテキストがすぐに消えます。Firefoxを使用しない限り、Firefoxは機能しているようです-IF-アラートボックスを挿入します。これは、ある種のタイミングの問題のように私には聞こえます。しかし、それが何であるか、またはそれをどのように修正するかはよくわかりません。誰かが問題が何であるかについての考えを持っていますか?

すべての助けを事前に感謝します!

$(document).ready(function(){
     $('#addCourse').live("submit", function(){
        //alert("Submit Function.  hours = "+$('#hours').val());
        document.getElementById('hrs_planned').innerHTML = 'HOURS = '+INIT_PLANNED_HRS+2;//($('#hours').val())+' GPA';
     });                
     document.getElementById('hrs_planned').innerHTML = 'HOURS!! = '+INIT_PLANNED_HRS+' GPA';
});

とhtml

<li><h3>Planned Courses</h3><p id = "hrs_planned"> gpa </p></li>
4

1 に答える 1

3

試してみてくださいreturn false;

また、説明されているようにjQuery1.7を使用している場合on()の代わりに使用します。詳細については、ドキュメントを参照してください。 jQuery 1.6.x以前を使用している場合は、代わりに使用してください。live()live()
delegate()

$(document).ready(function() {
    $('#addCourse').on("submit", function(e) {
        //alert("Submit Function.  hours = "+$('#hours').val());
        document.getElementById('hrs_planned').innerHTML = 'HOURS = ' + INIT_PLANNED_HRS + 2; //($('#hours').val())+' GPA';
        return false;
    });
    document.getElementById('hrs_planned').innerHTML = 'HOURS!! = ' + INIT_PLANNED_HRS + ' GPA';
});​

e.preventDefault..またはそれが失敗した場合は、とを使用してみることができますe.stopPropagation

$(document).ready(function() {
    $('#addCourse').on("submit", function(e) {
        // prevent default submit behaviour
        e.preventDefault;
        //alert("Submit Function.  hours = "+$('#hours').val());
        document.getElementById('hrs_planned').innerHTML = 'HOURS = ' + INIT_PLANNED_HRS + 2; //($('#hours').val())+' GPA';

        // prevent event from bubbling up
        e.stopPropagation;
    });
    document.getElementById('hrs_planned').innerHTML = 'HOURS!! = ' + INIT_PLANNED_HRS + ' GPA';
});​
于 2012-06-21T19:45:26.780 に答える