Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

valtinho

String

Recommended Posts

Olá, boa tarde pessoal,

 

Peguei alguns código e alterei conforme a minha necessidade, mas me deparei com um problema que não sei como resolver.

 

Tenho um form e quando gravo esse form um script me gera uma string para gravar, mas alguns campos do meu banco tem a descrição com espaçamento e quando esse scrip manda os valores para o meu banco os espaçamentos são ignorados.

 

Por exemplo:

 

Uma caixa de seleção:

 

BRS 132 seu value a sua descrição BRS 132

Mas só grava BRS

 

Vejam o script

 

function makeRequest(url, element) {	var http_request = false;		if (window.XMLHttpRequest) { // Mozilla, Safari,...		http_request = new XMLHttpRequest();		if (http_request.overrideMimeType) {			http_request.overrideMimeType('text/xml');			// See note below about this line		}	} else if (window.ActiveXObject) { // IE		try {			http_request = new ActiveXObject("Msxml2.XMLHTTP");		} catch (e) {			try {				http_request = new ActiveXObject("Microsoft.XMLHTTP");			} catch (e) {}		}	}		if (!http_request) {		alert('Giving up :( Cannot create an XMLHTTP instance');		return false;	}	http_request.onreadystatechange = function() { alertContents(http_request, element); };	http_request.open('GET', url, true);	http_request.send(null);}function alertContents(http_request, element) {	if (http_request.readyState == 4) {		if (http_request.status == 200) {			document.getElementById(element).innerHTML = http_request.responseText;		} else {			document.getElementById(element).innerHTML = 'There was a problem with the request.';		}	}}function sub(url, form) {	var str = getFormValues(form);	xmlReq = sendRequest(url, str);}function getFormValues(form_name) {	var str = "";		for(var i = 0; i < document.forms.length; i++) {		alert(document.forms[i].name);		if(document.forms[i].name = form_name) {			var formObject = document.forms[i];		}	}	for(var n = 0; n < formObject.elements.length; n++) {		// alert(' n: '+n+formObject.elements[n].type+' '+formObject.elements[n].name+'\n'+formObject.elements[n].value);		if(formObject.elements[n].type == "radio") {			// alert('checked: '+formObject.elements[n].checked);			if(!str) {				if(formObject.elements[n].checked == true) {					str = formObject.elements[n].name + '=' + formObject.elements[n].value;				} else {					str = str;				}			} else {				if(formObject.elements[n].checked == true) {					str = str + '&' + formObject.elements[n].name + '=' + formObject.elements[n].value;				} else {					str = str;				}			}		} else if(formObject.elements[n].type == "button") {			str = str;		} else {			if(!str) {				str = formObject.elements[n].name + '=' + formObject.elements[n].value;			} else {				str = str + '&' + formObject.elements[n].name + '=' + formObject.elements[n].value;			}		}		// alert(str);	}		return str;}function sendRequest(url, str) {	var http_request = false;		if (window.XMLHttpRequest) { // Mozilla, Safari,...		http_request = new XMLHttpRequest();		if (http_request.overrideMimeType) {			http_request.overrideMimeType('text/xml');			// See note below about this line		}	} else if (window.ActiveXObject) { // IE		try {			http_request = new ActiveXObject("Msxml2.XMLHTTP");		} catch (e) {			try {				http_request = new ActiveXObject("Microsoft.XMLHTTP");			} catch (e) {}		}	}		if (!http_request) {		alert('Giving up :( Cannot create an XMLHTTP instance');		return false;	}	http_request.open('POST', url, true);	http_request.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");	http_request.send(str);	return http_request;}
Alguma Ajuda?

 

Fiquem na paz

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu usei o comando encodeURIComponent(valor) na hora de concatenar o nome do campo e o valor, assim ele já arruma esse problema

 

dá uma olhada no meu código: http://forum.imasters.com.br/index.php?showtopic=174729

no final de tudo tem uma funçao chamada BuscaElementosForm que faz a mesma funçao da sua, só que de uma forma diferente

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.