带有 “.” “_” 的 Jquery 选择器不起作用

Jquery selector with "." "_" not working

本文关键字:选择器 不起作用 Jquery 带有      更新时间:2023-09-26

我有这个输入:

<input type="text" name="Latitude" id="Latitude" /> 

有了这个jquery就可以设置值:

$('#Latitude').val(latitude);

但是现在我需要将输入的 id 更改为 RegisterModel_Latitude 或 RegisterModel.Latitude,因此:

<input type="text" id="RegisterModel_Latitude" />

<input type="text" id="RegisterModel.Latitude" />

但是我无法使用jquery设置值...我试过:

$("#RegisterModel_Latitude").val(latitude);
$("#RegisterModel.Latitude").val(latitude);
$("#RegisterModel''.Latitude").val(latitude);
$('input[id="RegisterModel_Latitude"]').val(latitude);
$('input[id="RegisterModel.Latitude"]').val(latitude);
$('input[id="RegisterModel''.Latitude"]').val(latitude);

但是这些都不起作用,所以我做错了什么?

_ 是 id 的有效字符(有关示例,请参阅 @VisioN 的 jsfiddle(。

.表示类。 所以$("#RegisterModel.Latitude")正在寻找一个带有 id RegisterModel 和类 Latitude 的元素。 有关示例,请参阅我的@VisioN的jsfiddle分支。

检查可变纬度(变量纬度(可能丢失

等等。如果我得到了它,您想更改 ID,但您使用的是 val 而不是 attr。为什么不呢:

$('#Latitude').attr('id','RegisterModel_Latitude');

$('input[name=Latitude]').attr('id','RegisterModel_Latitude');

更改值,但不更改 ID。 =(

我发现soution,正在发生变化:

@Html.TextBoxFor(m => m.RegisterModel.Address, new { onblur = "codeAddress(RegisterModel_Address.value);" })

自:

<input type="text" id="RegisterModel_Address" onblur="codeAddress(RegisterModel_Address.value)" />

现在正在工作,感谢大家。