Im는 부트 스트랩을 사용하여 ASP.NET MVC에서 CRUD 페이지를 만듭니다. 내 문제는 differents 레코드를로드하고 업데이트하려고 할 때입니다. 일부 레코드는 정상적으로 작동하고 다른 레코드는 정상적으로 작동하지 않습니다. 404 오류를 찾을 수 없습니다.Ajax Jquery가 404 번을 몇 번 throw합니다.
삽입 또는 업데이트 할 때 동일한 작업을 사용합니다. 필드는 모두 문자열입니다. 처음에는 jquery serialize() 함수를 사용하여 양식의 값을 가져 왔습니다.
양식 값을 게시와 비교하면 몇 가지 변수가 누락되었습니다. 그래서, 저는 (데이터가 없어도) 동일한 변수를 보내도록 강요합니다. 그리고 결과는 여전히 동일합니다. 컨트롤러 메소드에 충돌 할 수있는 시간이 있습니다. 그리고 때때로 404 Not Found Error가 발생합니다.
function InsertButtonEvent() {
var edo = $('#cmbEstadoLegal').val();
var formvalues = $('#filialForm').serialize();
var txtClaveFilialjq = $('#txtClaveFilial').val();
var txtDescripcionBrevejq = $('#txtDescripcionBreve ').val();
var txtDescripcionjq = $('#txtDescripcion').val();
var txtIdFiscaljq = $('#txtIdFiscal').val();
var txtNodoFilialjq= $('#txtNodoFilial ').val();
var cmbEstadojq = $('#cmbEstado').val();
var cmbParticipacionAccionariajq= $('#cmbParticipacionAccionaria').val();
var cmbCveEdoOperjq = $('#cmbCveEdoOper').val();
var cmbGiroFilialjq= $('#cmbGiroFilial').val();
var cmbGrupoFilialesjq= $('#cmbGrupoFiliales').val();
var cmbParaestataljq= $('#cmbParaestatal').val();
var cmbTipoEmpresajq= $('#cmbTipoEmpresa').val();
var cmbEstadoLegaljq= $('#cmbEstadoLegal').val();
var txtFecConstitjq = $('#txtFecConstit').val();
var cmbMonedaNormalizadajq = $('#cmbMonedaNormalizada ').val();
var cmbMonedasAccionesjq = $('#cmbMonedasAcciones').val();
var txtValorContableAccionesjq = $('#txtValorContableAcciones').val();
var txtFecValAccionesjq= $('#txtFecValAcciones').val();
var txtDomiciliojq = $('#txtDomicilio').val();
var txtSitioWebFinaljq = $('#txtSitioWebFinal').val();
var txtTelefonojq= $('#txtTelefono').val();
var txtNumTeleFaxjq= $('#txtNumTeleFax').val();
var cmbPaisjq= $('#cmbPais').val();
var cmbResidenciasjq = $('#cmbResidencias').val();
var cmbNacionalidadesjq = $('#cmbNacionalidades').val();
var txtObjetivojq = $('#txtObjetivo').val();
var txtObservacionesjq = $('#txtObservaciones').val();
$.blockUI({ message: '<h1>Un momento por favor..</h1>' });
$.ajax({
type: "GET",
url: '../CatFiliales/InsertItem',
data: {
txtClaveFilial : txtClaveFilialjq ,
txtDescripcionBreve : txtDescripcionBrevejq ,
txtDescripcion : txtDescripcionjq,
txtIdFiscal : txtIdFiscaljq ,
txtNodoFilial : txtNodoFilialjq ,
cmbEstado : cmbEstadojq ,
cmbParticipacionAccionaria : cmbParticipacionAccionariajq ,
cmbCveEdoOper : cmbCveEdoOperjq ,
cmbGiroFilial : cmbGiroFilialjq ,
cmbGrupoFiliales : cmbGrupoFilialesjq ,
cmbParaestatal : cmbParaestataljq ,
cmbTipoEmpresa : cmbTipoEmpresajq ,
cmbEstadoLegal : cmbEstadoLegaljq ,
txtFecConstit : txtFecConstitjq ,
cmbMonedaNormalizada : cmbMonedaNormalizadajq,
cmbMonedasAcciones : cmbMonedasAccionesjq ,
txtValorContableAcciones : txtValorContableAccionesjq ,
txtFecValAcciones : txtFecValAccionesjq ,
txtDomicilio : txtDomiciliojq ,
txtSitioWebFinal : txtSitioWebFinaljq,
txtTelefono : txtTelefonojq,
txtNumTeleFax : txtNumTeleFaxjq ,
cmbPais : cmbPaisjq ,
cmbResidencias :cmbResidenciasjq,
cmbNacionalidades :cmbNacionalidadesjq ,
txtObjetivo: txtObjetivojq,
txtObservaciones: txtObservacionesjq
},
error: function (xhr, ajaxOptionx, thrownError) {
swal('error', xhr.status + ' ' + thrownError, 'error');
$.unblockUI();
}
})
.done(function (htmlPartialView) {
swal('', 'Registro Insertado', 'success');
renderPartialView(htmlPartialView);
});
여기에 가끔 방법에 대한 모든 매개 변수를 전송하지 않기 때문에 오류가 있다고 생각 내 컨트롤러 코드
public ActionResult InsertItem(
string txtClaveFilial,
string txtDescripcionBreve ,
string txtDescripcion ,
string txtIdFiscal ,
string txtNodoFilial ,
string cmbEstado ,
string cmbParticipacionAccionaria ,
string cmbCveEdoOper ,
string cmbGiroFilial ,
string cmbGrupoFiliales ,
string cmbParaestatal ,
string cmbTipoEmpresa ,
string cmbEstadoLegal,
string txtFecConstit ,
string cmbMonedaNormalizada ,
string cmbMonedasAcciones ,
string txtValorContableAcciones ,
string txtFecValAcciones ,
string txtDomicilio ,
string txtSitioWebFinal ,
string txtTelefono ,
string txtNumTeleFax ,
string cmbPais ,
string cmbResidencias ,
string cmbNacionalidades ,
string txtObjetivo ,
string txtObservaciones
)
{
//Do all the stuff with variables;
return PartialView("_Registers", catFilialesViewModel.Filiales);
}
입니다. 그러나 모든 매개 변수를 설정하는 경우에도 왜 작동하지 않습니까?
덕분에 많은
'삽입 또는 업데이트에 동일한 작업을 사용하고 있습니다.'... whyyyy !!! – Hackerman
jquery 코드에 논리를 추가하고 싶지 않기 때문에. 대신 컨트롤러 내부의 로직을 수행합니다. –
또한, CRUD 작업을 수행 할 때'get' 대신'post'를 사용하는 것이 더 낫습니다 .... 정보와 물건을 검색하는 데만 사용해야합니다 ... 또한 삽입 항목에서 중단 점을 사용할 수도 있습니다 방법을 사용하여 404 응답의 실제 원인을보다 잘 이해할 수 있습니다. ... 미국 내에서 중개자를 찾으려는 중개인은 미국인이 아니며, 미국인은 미국인입니다. – Hackerman