Привет, новое мобильное приложение для мобильных телефонов. Я занимаюсь разработкой в android, используя jquery mobile и jquery. Я показываю данные на мобильных устройствах, анализируя xml-данные, где я разбирал xml-данные успешно, теперь моя проблема - выпадающий список: where my drop down list contains List of weekdays Sunday to Saturday
Если я выберите понедельник, он будет анализировать некоторые данные из xml ans display в мобильном телефоне. Example: if я click sunday it will display Chicken Biriyani
In drop down if я change a day to monday it has to parse xml and has to display Mutton Biriyani
. But It displays Both Datas of Sunday and Monday.
if я change days in dropdown datas getting retained
я не знаю, как решить эту проблему, пожалуйста, помогите мне. Вот код, который я пробовал.
<!DOCTYPE HTML>
<html>
<head>
<link rel="stylesheet" href="/jquery.mobile-1.3.2.min.css"/>
<script src="/jquery-1.9.1.min.js"></script>
<script src="/jquery.mobile-1.3.2.min.js"></script>
</head>
<body>
<script type="text/javascript">
function report(period)
{
$(function() {
var eSelect = document.getElementById('yourSelectID');
var strUser = eSelect.options[eSelect.selectedIndex].value;
var order="http://journalonline.in/CRM/orderbooking/day?day=" + strUser;
$.ajax({
type: "POST",
url: order,
data: "{}",
cache: false,
dataType: "xml",
success: onSuccess
});
$("#resultLog").ajaxError(function(event, request, settings, exception) {
$("#resultLog").html("Error Calling: " + settings.url + "<br />HTTP Code: " + request.status);
});
function onSuccess(data)
{
$("#resultLog").append("<hr>");
$(data).find("Daydetails").each(function () {
var a=$(this).find("Productname").text();
var b=$(this).find("Quatity").text();
var c=$(this).find("Daystatus").text();
if(a!="")
{
$("#resultLog").append("<br><b> Productname</b>: " + $(this).find("Productname").text());
}
$("#resultLog").append("<br><b> </b> " + $(this).find("").text());
if(b!="")
{
$("#resultLog").append("<br> <b>Quantity</b>: " + $(this).find("Quatity").text());
}
$("#resultLog").append("<br><b> </b> " + $(this).find("").text());
if(c!=="")
{
$("#resultLog").append("<br><b> Status</b>: " + $(this).find("Daystatus").text());
}
$("#resultLog").append("<br><hr>");
});
}
});
}
</script>
<div data-role="header" data-position="fixed">
<a href="employee.html" data-theme="b">Back</a>
<h1>Bird on Tree</h1>
<a href="login.html" data-theme="b">Logout</a>
</div>
<br>
<center><font color="#857240" size="5"><h3>Daywise Reports</h3></font></center>
<br>
<table>
<tr>
<td style="color:#857240">Day :</td>
<td>
<select id="yourSelectID" onchange="report(this.value)">
<option value="Select">Select</option>
<option value="Monday">Monday</option>
<option value="Tuesday">Tuesday</option>
<option value="Wednesday">Wednesday</option>
<option value="Thursday">Thursday</option>
<option value="Friday">Friday</option>
<option value="Saturday">Saturday</option>
<option value="Sunday">Sunday</option>
</select>
</td>
</tr>
</table>
<p id="resultLog"></p>
<br>
<br>
<br>
<br>
<div data-role="footer" data-position="fixed">
<center> <a style="text-decoration:none; color:#FFF;" href="http://www.jtechindia.com">J-Tech © 2014</a> </center>
</div>
</div>
</body>
</html>
Пожалуйста, помогите мне, как это решить. Спасибо заранее.
Вы используете функцию jQuery append()
для отображения ваших результатов. Это всегда добавляет к любым существующим элементам DOM. Если вы хотите избавиться от предыдущего содержимого перед добавлением нового контента, вызовите функцию empty()
:
function onSuccess(data)
{
$("#resultLog").empty();
$("#resultLog").append("<hr>");
$(data).find("Daydetails").each(function () {
...
API Doc для пустого: http://api.jquery.com/empty/