我在asp.net mvc4 app中有这个标记。
<div style="margin-top: 35px; margin-right: 10px; padding-left:2px; border: solid 1px #DCE8E8; height:230px;">
We are located at
<span id="txtPhysicalAdd"/><br />
<div><span id="txtPostalAdd"/><br /></div>
<div>Phone#<br /></div>
<div><span id="txtMobile1_2"/><span id="txtMobile2"/><br /></div>
<span id="txtTown"/><br />
<span id="txtTelephone1"/><br />
<label id="txtCountry"/><br />
<a href="@Url.Content("~/site/Contact/ContactUs")"><span id="txtEmail"/></a>
<br />
</div>
在左侧导航面板中,我想设置联系信息。它位于_layout.cshtml中,因此使用了这个JQuery代码段。
$(document).ready(function () {
var url = '@Url.Action("GetPrimaryContact","Contact")';
$.ajax({
type: "POST",
url: url,
success: function(returndata) {
if (returndata.ok) {
var physicalAdd = returndata.data.PhysicalAddress;
var postalAdd = returndata.data.PostalAddress;
var mobile1 = returndata.data.Mobile1;
var mobile2 = returndata.data.Mobile2;
var telephone1 = returndata.data.Telephone1;
var town = returndata.data.City;
var country = returndata.data.SelectedCountryName;
var email = returndata.data.Email;
$('#txtPhysicalAdd').text(physicalAdd);
$('#txtPostalAdd').text(postalAdd);
$('#txtMobile1').text(mobile1);
$('#txtMobile1_2').text(mobile1);
$('#txtMobile2').text(mobile2);
$('#txtTown').text(town);
$('#txtTelephone1').text(telephone1);
$('#txtCountry').text(country);
$('#txtEmail').text(email);
//window.alert(' email : ' + mobile2);
}
else {
window.alert(' error : ' + returndata.message);
}
}
});
运行它的问题是它只填充了我看到的Firebug-inspect元素时的fisrt值
<div style="margin-top: 35px; margin-right: 10px; padding-left:2px; border: solid 1px #DCE8E8; height:230px;">
We are located at
<span id="txtPhysicalAdd">Kahawa wendani opposite Kahawa Garrison</span>
</div>
如果我评论JQuery中的任何字段,剩下的第一个是polulated,其余的被忽略。此外,如果我有另一个字段,例如在页眉中它被映射但在上面的div中被忽略。请协助。 :)
答案 0 :(得分:1)
ID必须是唯一的。
http://www.w3.org/TR/html401/struct/global.html#h-7.5.2
属性定义
id = name [CS]此属性为元素指定名称。 :此 名称在文档中必须是唯一的。
有多种方法可以解决您的问题。一个简单的方法是为控件提供相同的类名,然后使用类选择器。看到这个小提琴:http://jsfiddle.net/TtcAY/
$('#btn').click(
function()
{
$('.mobile').val('212 867 5309');
$('.country').val('Wottsamattau');
});
答案 1 :(得分:0)
我使用p代替span和div代替段落,它运行良好。