jquery - 尝试将链接/href 路径附加到原始代码

标签 jquery if-statement href

我正在将网站不同页面的内容加载到结果容器(div 类)中。

    $('.result-container').load('../path/otherpage.html #ID');

到目前为止一切顺利,有效。 现在,我需要在单击结果容器中的任何链接时更新它。原因是,它们所有的链接仍然指向它们的原始位置(从它们加载的位置)。

这个想法是,当单击链接时,我得到 href 属性。如果它以“files/”开头,则它是相对于原始页面的链接(如果它以其他内容开头,则它是到其他地方的链接,这是可以的)。因此,我需要添加到(刚刚单击的)href“../path/”的前面,以使最终的href路径看起来像“../path/files/etc....”。 我有一些工作,但真的很难将它们拼凑在一起......有人可以帮我吗? 谢谢! 米。

    $(function() {
    $(".result-container").live("click",   //on click on element
                     function() {
                     $.get($(this).attr("href"), //get the href attribute                                              
                              if ($('a[href^="files/"]'))   //if attribute starts with "files/"
                                 {function() {
                                 var href = $(this).attr('href'); //get the attribute content - guess I could have done that above?
                                 $(this).attr('href', '../start/path/' + href); //append the start path to original path
                                             };
                                 }
                           )};
                           )};
<小时/>

太好了,谢谢!!!! 现在我正在从我的网站上的不同页面加载一个元素:

$('.result-container').load(../path/conetent.html #unique-ID); //load conent from different page on my site

单击时,它将以“files/”开头的每个元素更改为“../path/files/”:

  $(function() {
    $(".result-container").live("click",
                     function() {
                        $('.result-container').html();
                        var test = $('.result-container').html().replace(/"files\//gi, '"../path/files/');
                        $('.result-container').html(test);                       
                           }); }); 

这有效。这会更改原始内容,并在 .result-container 中主动单击后显示更改后的内容。 现在我试图删除 .live("click", 触发器在这里。(这个触发器仅存在,因为我最初实现此目的的方法不同)。但是当我删除“click”时,此脚本不会更改自动文本...知道我从唯一 ID 容器加载内容后如何执行并显示更改后的内容吗?

最佳答案

将字符串“files/”的任何实例替换为“/path/”怎么样?所以类似

var new_text = $('#my_div').html().replace(/"files\//gi, '"/path/');
$('#my_div').html(new_text);

如果我的正则表达式有点不对劲,你必须原谅我,但这应该会给你一个想法。

关于jquery - 尝试将链接/href 路径附加到原始代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6064842/

相关文章:

javascript - window.location.href 到子文件夹

javascript - jQuery 选择器 - 在变量内追加/加载后也选择新元素

python - 具有复合条件的 If 语句针对列表中的每个项目验证条件

c - 查找 if-else 中的错误赋值情况

javascript - 从一个链接获取 href 并克隆到另一个 href

jquery - 根据 HREF 值切换父元素的类 jQuery

javascript - 如何在下拉列表中获得多个选定值

java - 如何在 jQuery ajax 调用中接受 Spring MVC Controller 中的 JavaScript 数组参数?

javascript - 输入键在搜索框中不起作用

c++ - 警告 C4018 : '<' : signed/unsigned mismatch?