相关疑难解决方法(0)

HTML中id属性的有效值是什么?

id为HTML元素创建属性时,该值的规则是什么?

html

1945
推荐指数
22
解决办法
43万
查看次数

ID选择器中的jQuery点?

可能重复:
当id包含点时,如何通过ID和jquery选择html节点?

我有一个网站,其中包含与此类似的元素:

<p id="root.SomeCoolThing">Some Cool Thing</p>
Run Code Online (Sandbox Code Playgroud)

我不能用jQuery选择段落,$('#root.SomeCoolThing')因为jQuery认为,SomeCoolThing是一个元素的类id="root".

如何用jQuery选择这个元素?我想避免像这样的结构:

$(document.getElementById('root.SomeCoolThing'))
Run Code Online (Sandbox Code Playgroud)

jquery jquery-selectors

125
推荐指数
4
解决办法
7万
查看次数

当元素在标记名称中包含点时,Jquery选择器不工作

我刚开始第一次使用jquery,所以我不确定我所做的是否正确.我正在尝试做的是非常基本的,我有一个脚本,它在MVC视图中加载时向文本框添加css水印.

要选择元素,请执行以下操作:

jQuery(document).ready(function(){$('#Department.DeptName').addWatermark('input-watermarked', 'test');});
Run Code Online (Sandbox Code Playgroud)

然后在我的脚本中添加css水印类,它在"this.val().length"语句中失败.

jQuery.fn.toggleWatermark = function(watermarkedClass, watermarkText) {
if (this.hasClass(watermarkedClass)) {
    this.removeWatermark(watermarkedClass);
}
else if (this.val().length == 0) {
    this.addClass(watermarkedClass);
    this.val(watermarkText);
}
Run Code Online (Sandbox Code Playgroud)

}

该脚本在元素id为"DepartmentDeptName"时工作正常,就好像当元素id在其中包含一个点时,选择器不起作用.有谁知道为什么或如何解决这个问题?

javascript model-view-controller jquery-selectors

33
推荐指数
1
解决办法
2万
查看次数

为什么这个jquery选择器没有句点工作

我有一个带ID的div

<div id="updates-pane-user.followed_on">
Run Code Online (Sandbox Code Playgroud)

这个jquery选择器工作

$("[id^='updates-pane']")
Run Code Online (Sandbox Code Playgroud)

但事实并非如此

$("#updates-pane-user.followed_on")
Run Code Online (Sandbox Code Playgroud)

我没有看到有什么问题.身份证名称可以包括句号吗?我错过了一些明显的东西吗

jquery jquery-selectors

18
推荐指数
1
解决办法
2565
查看次数

jQuery $("#"+ x)不起作用,但document.getElementById(x)有效

问题

我正在尝试更改元素的内部HTML值.我没有真正使用过jQuery,而且我在功能的许多方面仍然是新手.

    $('a.toggle-download').live('click', function (event) { 
        $.post("/ajax/toggle-download", { code: $(this).data("document"), prev_value: $(this).data("val") })
        .done(function(data) {
            var json = data,
            obj = JSON && JSON.parse(json) || $.parseJSON(json);
            if(obj['return'] == 1){
                //document.getElementById("p_" + obj['code']).innerHTML = 'some text';
                $("#p_" + obj['code']).html('some text');
            }
        });
        event.preventDefault();
    });
Run Code Online (Sandbox Code Playgroud)

我已经尝试过这两行,首先是jQuery one through $("#p_" + obj['code']),它没有用,然后通过document.getElementById("p_" + obj['code'])它完美地工作.

看来我在这里遗漏了一些明显的东西,但我仍然不明白为什么jquery在这种情况下不起作用!

这个问题

为什么普通的旧javascript工作正常,当jQuery没有?

其他信息

1)jQuery本身工作,它正确加载.不存在冲突:成功发送ajax呼叫并正确接收答案,

2)收到的ID存在且唯一

3)我不是热衷于jQuery html()方法,但我遵循文档,它应该工作,因为我使用它

系统信息

使用Chrome 27.0.1453.116 m时出现此问题.我没有用其他版本或其他浏览器测试它,但我很确定这是一个jQuery问题而不是浏览器问题.另外,我在apache上使用php 5.3,但这些信息再次与问题无关.

如果我错过了一些你需要更好地理解我的问题的信息,请在评论中告诉我,我会尽快回答你的问题.另外,请原谅我的坏语法,但我不是母语为英语的人.

评论的答案

根据要求,这是ajax响应的一个例子: {"return":1,"code":"5.43.321"}

该命令console.log($("#p_" + obj['code']).length)产生"0"

javascript jquery

8
推荐指数
1
解决办法
1508
查看次数

阻止ASP.NET MVC在Html Helper ID中使用下划线替换句点

刚刚升级到最新的ASP.NET MVC候选版本时,我注意到,当使用Html Helpers时,任何带有句点"."的名称.当输出元素的ID时,它将被下划线"_"替换.

我相信这是为了帮助使用JQuery,并且使用句点是为了帮助使用ModelBinders.这打破了我们使用原型的所有javascript,因为ID已全部更改.

有没有办法轻松关闭此功能?

javascript asp.net-mvc jquery prototype

7
推荐指数
1
解决办法
1989
查看次数

如何通过名称引用元素并带有[]括号?

如何在jquery BY NAME中引用其中包含[]的元素.

<select name="values[]" multiple="true">
<option value="1">1</option>
<option value="2">2</option>
<option value="2">2</option>
</select>

<script type="text/javascript">
$('[name=values[]]'); 
</script>
Run Code Online (Sandbox Code Playgroud)

这应该抓住元素,但它不起作用,我相信名称中的[]搞乱它,逃避它似乎也不起作用.我无法弄清楚我做错了什么

javascript jquery

7
推荐指数
2
解决办法
3237
查看次数

使用jQuery选择ID为句点的元素?

我有一个带点('.')的id.我无法使用jQuery选择它.

例如:

 <p id="sec.ond">this is another  paragraph</p>
Run Code Online (Sandbox Code Playgroud)

如何使用这样的id来选择这个元素?

当我使用带有数组的spring表单时,我得到了这样的id,例如:

<form:input path="abc[0].firstName" />
Run Code Online (Sandbox Code Playgroud)

这将导致:

<form:input id="abc0.firstName" name="abc[0].firstName" />
Run Code Online (Sandbox Code Playgroud)

在此先感谢您的帮助.

html jquery spring-mvc

5
推荐指数
1
解决办法
1186
查看次数

如何屏蔽"." 炭?

可能重复:
如何让jQuery选择带有的元素.(期间)他们的身份证?

我试着运行以下代码:

$('#info-mail.ru .domain-info').toggle();
Run Code Online (Sandbox Code Playgroud)

这里的例子

#info-mail.ru我理解为解释为id ="info-mail"和class ="ru",但我有以下结构:

<div id="info-mail.ru">
    <p class="domain-info">
        Some cool info
        Some cool info
        Some cool info
        Some cool info
    </p>
</div>
Run Code Online (Sandbox Code Playgroud)

我该如何屏蔽"." 选择语句中的char?或者唯一的方法是替换所有"." 用"_"(例如)?

TIA!

javascript jquery

5
推荐指数
1
解决办法
194
查看次数

带加号的jQuery

我想知道为什么jQuery不允许"+"符号.这是一个如何使用"1"和"3"而不是"2+"的示例.只需将鼠标悬停在每个div上方的文本上.

<div id="div-2+"></div>
Run Code Online (Sandbox Code Playgroud)

的jsfiddle

$('a.hover').mouseover(function() {

    dataI = $(this).data('i');

	$('div#div-' + dataI).addClass('h');

});

$('a.hover').mouseout(function() {

    dataI = $(this).data('i');

	$('div#div-' + dataI).removeClass('h');

});
Run Code Online (Sandbox Code Playgroud)
a {
    display: inline-block;
    width: 100px;
    margin: 60px 20px 60px 0;
    text-align: center;
}

div {
    display: inline-block;
    width: 100px;
    height: 100px;
    margin-right: 20px;
    background-color: #ddd;
}

div.h {
    background-color: #f00;
}
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<a class="hover" data-i="1">DIV 1</a>

<a class="hover" data-i="2+">DIV 2+</a>

<a class="hover" data-i="3">DIV 3</a>

<br />

<div id="div-1"></div>

<div id="div-2+"></div>

<div id="div-3"></div>
Run Code Online (Sandbox Code Playgroud)

html javascript jquery jquery-selectors

5
推荐指数
1
解决办法
1819
查看次数