从javascript警报加载div

时间:2016-05-12 14:51:46

标签: javascript jquery

我的菜单链接使用jQuery脚本将各种HTML脚本加载到index.php页面上的div中。菜单项'信息'将sectionInfo.html放入index.php页面。此脚本包含一个简短的表单,如果用户滥用表单,则会向用户显示alert()。但是当接受警报时,页面会重新加载到默认index.php,然后用户必须再次从菜单中选择信息以返回到表单所在的位置。如何从警报中重新加载正确的div?

菜单链接的jQuery脚本:

$('.trigger').click(function(){
    var url = $(this).attr('href');
    $('#target').load(url)

菜单链接:

<ul>
    <li>
        <a href="sectionInfo.html" class="trigger">Info</a>
    </li>
</ul>

警报:

function validateMyForm1() {
    alert("Alert goes here ");
    window.location = 'href="sectionInfo.html" class="trigger"';
}

index.php正文中的div

<div id="target"></div>

我检查了其他帖子并尝试了各种替代方案。请帮助,如果你点击我,请告诉我为什么我经常点击,不知道为什么。谢谢。

https://codereview.stackexchange.com/questions/64192/loading-div-sections-from-separate-files

calling jquery from a javascript function

Go to URL after OK button in alert is pressed

jQuery脚本是我在此编辑中包含的较长脚本的一部分:其下部向下滑动文本html文件。

$('.trigger').click(function(){
  var url = $(this).attr('href');
  $('#target').load(url, function() {
        $('#faqs h1').each(function() {
            var tis = $(this), state = false, answer = tis.next('div').hide().css('height','auto').slideUp();
            tis.click(function() {
                state = !state;
                answer.slideToggle(state);
                tis.toggleClass('active',state);
            });
        });
    });
  return false;
});

1 个答案:

答案 0 :(得分:1)

您的JS中存在一些问题,在您的第一个示例中,您需要致电preventDefault()上的event来停止关注链接:

$('.trigger').click(function(e) {
    e.preventDefault();
    $('#target').load($(this).attr('href'))
});

在第二个代码示例中,您的字符串位置完全错误,您只需将URL设置为字符串即可。我个人更喜欢使用assign()方法执行此操作,如下所示:

function validateMyForm1() {
    alert("Alert goes here");
    window.location.assign('sectionInfo.html');
}