Javascript 不稳定的HTML行为。文本消隐
我试图使用jquery更新Javascript 不稳定的HTML行为。文本消隐,javascript,jquery,html,innerhtml,Javascript,Jquery,Html,Innerhtml,我试图使用jquery更新标记,但是,当我单击“提交”按钮时,我插入的带有innerHTML的文本很快就会消失。除非我使用Firefox,在这种情况下,如果我插入警报框,它似乎可以工作。这听起来像是某种时间问题。但我不太清楚它是什么,也不知道如何修复它。有人知道问题出在哪里吗 提前感谢所有的帮助 $(document).ready(function(){ $('#addCourse').live("submit", function(){ //alert("Submit
标记,但是,当我单击“提交”按钮时,我插入的带有innerHTML的文本很快就会消失。除非我使用Firefox,在这种情况下,如果我插入警报框,它似乎可以工作。这听起来像是某种时间问题。但我不太清楚它是什么,也不知道如何修复它。有人知道问题出在哪里吗
提前感谢所有的帮助
$(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>
计划课程gpa
尝试
返回false
如果您使用的是jQuery 1.7,因为live()
已被去除润滑,请使用on()
而不是live()
。有关详细信息,请参阅。如果您使用的是jQuery 1.6.x或更早版本,请改用
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';
});
由于没有阻止默认提交的发生,您的页面很可能正在刷新。+1。将
return false
添加到提交处理程序。@thg435好的,你会怎么做?我尝试将return false添加到函数中,但行为没有改变。事实上,我将其切换到打开状态,现在它似乎工作正常!谢谢