我想创建一个按钮,用户可以选择过滤他们想要的商店并在表格中查看结果。例如,选择状态属性等于A的XML行。但是没有返回,请告知是否有任何语法有问题。感谢。
<markers>
<marker name="Store A" address="1 ABC street" state="A" phone="1234567" />
<marker name="Store B" address="2 ABC street" state="B" phone="1234567" />
<marker name="Store C" address="3 ABC street" state="A" phone="1234567" />
<input type='button' name='select1' value="A" onClick="changeFilter(this.value);">
function changeFilter(ctry){
$country=ctry;
$(".datarow").remove();
loadTable($xmldata);
}
function loadTable(data){
$xmldata=data;
$(data).find("marker[state=" + ctry + "]").each(function(){
var $this=$(this);
var $name=$this.find('marker[name]').text();
var $tel=$this.find('marker[phone]').text();
var $country=$this.find('marker[address]').text();
$("#datatable").append("<tr class='datarow'><td>"+$name+"</td><td>"+$tel+"</td><td>"+$country+"</td></tr>");
});
}
答案 0 :(得分:1)
您需要使用.attr()
get方法来获取属性值。
$("div").find("marker[state=" + ctry + "]").each(function(){
var $this=$(this);
var $name=$this.attr("name");
var $tel=$this.attr("phone");
var $country=$this.attr("address");
});