JavaScript按类和ID从标签编辑InnerHTML

时间:2016-09-10 11:34:01

标签: javascript jquery

对于这些链接

if ($('.lightbox').css('display') != 'none') {
    $('body').on({'mousewheel': function(e) {
        e.preventDefault();
        e.stopPropagation();
    }
})
}

var div = $(".lightbox").height();
var win = $(window).height();

if (div > win ) {
    $(".lightbox").css("overflow-x","scroll");
}

我尝试根据每个ID和类编辑其内容。

Ultil现在我用过

<div class="post_actions"> 
    <a class="color-transition article_delete" href=""><i class="fa fa-pencil"></i></a>
    <a class="color-transition article_edit" href="#" id="1"><i class="fa fa-pencil-square-o"></i></a>
</div>

但是页面中的每个$('.article_delete').html('<img src="images/loader.gif" class="loading" />'); 类都在改变InnerHTML内容。 我试过这个:

.article_delete

和这个(来自stackoverflow类似帖子):

$('.article_delete#'+article_id).html('<img src="images/loader.gif" class="loading" />'); 

任何解决方案?我想只选择document.getElementById(article_id).getElementsByClassName("article_delete")[0].html('<img src="images/loader.gif" class="loading" />'); .article_delete

4 个答案:

答案 0 :(得分:2)

<div class="post_actions"> 
<a class="color-transition article_delete" href="" id="test-2"><i class="fa fa-pencil"></i></a>
<a class="color-transition article_edit" href="#" id="test-1"><i class="fa fa-pencil-square-o"></i></a>
</div>

现在看看js:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script>
  $(".post_actions").on("click","[id^=test]",function(){
  $(this).html("your new html");
})
</script>

答案 1 :(得分:1)

要通过 ID 获取元素,您必须使用前缀#

$('#' + ELEM_ID )

要通过 CLASS 获取元素,您必须使用前缀.

$('.' + ELEM_ID )

要通过 TAG 获取元素,您必须使用输入不带任何前缀的标记名称:

$('div')

有许多类型的选择器,您可以组合选择器以获得特定结果

jQuery Selectors

在您的示例中,您可以使用this访问点击的元素并进行更改。

实施例

&#13;
&#13;
$('.article').on("click", function(){
  $(this).html('<span>LOADING ... </span>');
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>

  <body>
    
    <div class="post_actions"> 
      <a class="color-transition article" href="#">ACTION 1</a>
      <br>
      <a class="color-transition article" href="#">ACTION 2</a>
      <br>
      <a class="color-transition article" href="#">ACTION 3</a>
      <br>
      <a class="color-transition article" href="#">ACTION 4</a>
      <br>
      <a class="color-transition article" href="#">ACTION 5</a>
      <br>
      <a class="color-transition article" href="#">ACTION 6</a>
    </div>
&#13;
&#13;
&#13;

答案 2 :(得分:1)

我终于找到了解决方案。 因为我需要来自每个div的id用ajax解析它们到php我为每个链接添加了另一个类。 这是一个例子:

PHP

 <a class="color-transition  article_spam_flag asf'.$id.'" href="#" id="'.$id.'"><i class="fa fa-flag"></i></a>

JS

&#13;
&#13;
$(function() {
$(".article_spam_flag").click(function() {
var article_id = $(this).attr("id");
var dataString = 'article_id='+article_id;  
//$('a#'+article_id).removeClass('liked');
//document.getElementById(article_id).getElementsByClassName("article_spam_flag")[0].html('<img src="images/loader.gif" class="loading" />');
//$('.article_spam_flag#'+article_id).html('<img src="images/loader.gif" class="loading" />'); 
  //$(this).html('<img src="images/loader.gif" class="loading" />'); 
  $('.asf'+article_id).html('<img src="images/loader.gif" class="loading" />'); 
$.ajax({
	type: "POST",
	url: "action/article_spam_flag.php",
	data: dataString,
	cache: false,
	success: function(data){
    if (data == 0) {
	alert('Actiunea nu a putut fi realizata!');
	} else {
	//$('.article_spam_flag').fadeIn("slow").html(data);
	$('.asf'+article_id).fadeIn("slow").html(data);
	//$(this).fadeIn("slow").html(data);
	//window.location.href="contact.php?categorie=ArticolFlag: "+article_id;
	//floating contact
	}
	}  
});
return false;
});
});
&#13;
&#13;
&#13;

答案 3 :(得分:0)

使用Id,类似这样,

 <div class="post_actions"> 
 <a class="color-transition article_delete adding-img" id="unique_id1" href=""><i class="fa fa-pencil"></i></a>
 <a class="color-transition article_edit adding-img" href="#" id="unique_id2"><i class="fa fa-pencil-square-o"></i></a>
    </div>

和js中的任何人都说id unique_id1

$('#unique_id1').html('<img src="images/loader.gif" class="loading" />'); 

两者

$('#unique_id1,#unique_id2').html('<img src="images/loader.gif" class="loading" />');

通过使用类,只有你想要这个类的那个

$(&#39; .adding-IMG&#39)。HTML(&#39;&#39);