Görünümün bir parçası olan açılır listenin onchange olayı üzerine bir AJAX çağrısı yapmalıyım. Değişim olayında veritabanını aramam gerekiyor, bazı hesaplamalar UI'yi gösteriyor ve daha sonra bir grafik kontrolünü doldurmak için hesaplamaları kullan. UI ekranı bu sırada. Grafik Açılır kategoriler derece ile alt kategorilerden liste Yani ben, değişikliği etkinliğinde DIV3 kategoriler oylarını görüntülemek derecelendirme kullanmak gerekir gibi grafiği doldurmak için skor puanı sıralar. Kolayca .NET'de yapıldı ama nasıl MVC ?? Düşünebildiğim tek seçenek, arkasındaki kodla kullanıcı kontrolünü oluşturmak ama MVC'yi kullanmanın amacını yitirmek. Herhangi bir yardım için teşekkür ederiz.AJAX çağrısı MVC'deki OnChange etkinliğinde
cevap
Kısmi görünümden yararlanın. Orada ASP.Net MVC Kısmi Görünüm google eğer birçok bağlantılar vardır ama burada yolu ben
http://blog.stevensanderson.com/2008/10/14/partial-requests-in-aspnet-mvc/
intestering bulundu biridir ben tamamen size yapmaya çalıştığını anlamak emin değilim ama MVC Muhtemelen bir çift AJAX çağrısını bir araya getirme görevini üstlenirdim. İlk seçimine göre kategori derecelendirmelerini günceller. Bu, muhtemelen puanları kolayca çıkarabilmeniz için JSON'u döndürür. İkincisi, ilk olarak döndürülen derecelendirme puanlarını alır ve grafiği HTML olarak işleyen bir eylemi çağırır; yani, döndürülen ve belgede uygun yere yerleştirilen kısmi bir görünüm oluşturur.
Bunu nasıl uygulayacağınız hakkında genel bir fikir verilmektedir.
<script type="text/javascript">
// assuming you're using jQuery
$("#ddlAjax").change(function (event) {
$.ajax({
url: "Controller/GetPartialGraph/" + $(this).val(),
data: { id = $(this).val() /* add other additional parameters */ },
cache: false,
type: "POST",
dataType: "html",
success: function (data, textStatus, XMLHttpRequest) {
$("#divPartialView").html(data); // HTML DOM replace
}
});
});
</script>
<select id="ddlAjax">
... list of options
</select>
<div id="divPartialView">
<!-- something like this in your ASP.NET View -->
<%= Html.RenderPartial("MyPartialView", Model) %>
</div>
Denetleyici eylem yönteminiz.
[HttpPost]
public PartialViewResult GetPartialGraph(int id /* drop down value */)
{
// do calculations whatever you need to do
// instantiate Model object
var model = myBusinessLogicService.DoCalculations(id);
return PartialView("MyPartialView", model);
}
Bence bu aradığınız cevaptır.
Tamam, ia bir onchange olay çağırmak için bir yol istediğini bir dropdownlist değişiklik bu yararlı olabilir eğer:
@Html.DropDownListFor(
model => model.SelectedId,
new SelectList(ViewBag.Ids, "Id", "Name"),
"[All]",
new { onchange = "onChangeId();", @id ="municipalityDropDown" }
)
o zaman bu javascript kodu olabilir ve ajax kodu. Ve burada bir eylem yöntemini çağırmak için bir jax kod örneği.
function onChangeId() {
jQuery.ajax({
url: '@Url.Action("Action Method Name", "Controller Name")',
type: 'POST',
contentType: 'application/json',
data: JSON.stringify({ data: data2 }),
success: function (result) { }
});
}
Soruyu okumuş görünmüyorsunuz. Kod değişimini nasıl tetikleyeceğini veya ajax isteğini nasıl göndereceğini sormuyor. –
Evet, bu doğru - tek değişiklik değiştiriliyor:
onchange = “this.form.submit();”
ile:
onchange = “$(this.form).submit();”
çalıştığını Benim için this mesaja
- 1. AJAX çağrısı
- 2. Flash - AJAX çağrısı
- 3. ajax çağrısı ile QuickSearchJS
- 4. Ember.RSVP.Promise AJAX çağrısı
- 5. çerçeve oyna - ajax çağrısı
- 6. ajax çağrısı içinde URL nasıl manipüle edilir?
- 7. ajax çağrısı ile jquery doğrulaması
- 8. AJAX çağrısı beklendiği gibi çalışmıyor
- 9. Rewrite jQuery Ajax çağrısı AngularJS
- 10. Ajax Cross Etki Alanı Çağrısı
- 11. onChange
- 12. ng-tekrar listesi, ajax çağrısı değeri
- 13. Ajax Çağrısı (jQuery) sonrası DOM'ı nasıl güncelleyebilirim?
- 14. JQuery Mobile Dinamik Listesi Ajax Çağrısı
- 15. Ajax çağrısı uygun sonucu dize olarak döndürmez
- 16. ajax POST çağrısı WCF hizmetine sorun
- 17. MVC 4.5 Async Ajax çağrısı çalışmıyor
- 18. ajax çağrısı nasıl tekrarlanır başarıya kadar yinelenir
- 19. Ajax çağrısı php dosyalarını iç içe
- 20. dur jquery onChange özyinelemeli yineleme
- 21. onChange JSF eylemi
- 22. Tüm formu onChange
- 23. Angular2 dosya girişi onchange
- 24. Bootstrap DatePicker - Onchange
- 25. Seçimde onblur/onchange alternatif
- 26. jQuery trigger onChange
- 27. React input onChange tetiklenmiyor
- 28. TextWatcher, bir android etkinliğinde izleyici
- 29. Scala Salıncak Etkinliğinde Kullanılan Backquote
- 30. Tek bir jQuery Ajax çağrısı ile birden çok öğeyi doldurun
buldum, ama mecburdum sadece değiştir: "data: {id = $ (this) .val()}" to "veri: {id: $ (this) .val()" - Not: "=", ":" ile değiştirilir. Teşekkürler. – paweln66