使用id jquery中的空格

Working with spaces in id jquery

本文关键字:空格 jquery id 使用      更新时间:2023-09-26

嗨,我需要获得带有空格的id的类名,但很难得到正确的类名。这是我的代码的一部分

<div onclick="javascript:Myfunction(value1.value,'AA BB',value2.value,'ddd')" class="clasname" id="1234567890AA BB"></div>
 <div onclick="javascript:Myfunction(value1.value,'CC',value2.value,'ddd')" class="clasname" id="1234567890CC"></div>

<script>
function Myfunction(value1, value2)
{
 var ValId='1234567890';
 var a =  ValId+ '' + value1;
       // not working showing syntax error error 
        alert($('div[id='+a+']').attr('class')); 
        // working 
                alert($("div[id='1234567890AA BB']").attr('class')); 
  }
</script>

请帮助解决问题

使用带有空格的id是不可取的。

但我想用以下代码来帮助您,这些代码将仅基于单击来提供该div的id。

<script   src="https://code.jquery.com/jquery-2.2.4.js"   integrity="sha256-iT6Q9iMJYuQiMWNd9lDyBUStIq/8PuOW33aOqmvFpqI="   crossorigin="anonymous"></script>
<div class="clasname" id="1234567890AA BB">Test2</div>
<div class="clasname" id="1234567890CC">Test1</div>
<script>
$('.clasname').click(function(){
  alert($(this).attr('id'));
});
</script>

在id中使用空格是不正确的,而将underscore(_)作为id。

ID令牌必须以字母([a-Za-z])开头,后面可以跟任意数量的字母、数字([0-9])、连字符("-")、下划线("_")、冒号(":")和句点(".")。

Eg: 1234567890_AA_BB,1234567890_AA_BB etc

此外,您将向函数发送四个参数,但在函数定义中只接受其中两个参数。只取两个参数。

<div onclick="javascript:Myfunction('AA_BB','ddd')" class="clasname" id="1234567890AA_BB"></div>
<div onclick="javascript:Myfunction('CC','ddd')" class="clasname" id="1234567890CC"></div>

您应该只发送两个参数,这可能对您有用。

<div onclick="javascript:Myfunction('AA_BB','ddd')" class="clasname" id="1234567890_AA_BB"></div>
<div onclick="javascript:Myfunction(value1.value,'CC',value2.value,'ddd')" class="clasname" id="1234567890CC"></div>
<script>
function Myfunction(value1, value2)
 {
    var ValId='1234567890';
    var a =  ValId+'_'+value1; // Gives you '1234567890_AA_BB'
    alert($("div[id='+a+']").attr('class')); 
 }
</script>