Segue abaixo códigos JavaScript úteis no desenvolvimento ASP.NET e também para uso no Microsoft Dynamics CRM 4.0:
JS ASP.NET - Função para obter o valor de algum dos parâmetros da Query String da página.
function getQueryStringParam(name)
{
name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
var regexS = "[\\?&]"+name+"=([^]*)";
var regex = new RegExp( regexS );
var results = regex.exec( window.location.href );
if( results == null ) return "";
else
return results[1];
}
JS ASP.NET - Função para Converter o primeiro caractere de toda frase em Maiúsculo.
function UCWords(str)
{
  var arrStr = str.split(" ");
  var strOut = "";
  var i = 0;
  var stringValues = "da-de-do-das-dos";
  while (i < arrStr.length)
  {
  
  if (stringValues.indexOf(arrStr[i].toLowerCase()) < 0)
  {
  firstChar  = arrStr[i].substring(0,1);
  remainChar = arrStr[i].substring(1);
  firstChar  = firstChar.toUpperCase(); 
  remainChar = remainChar.toLowerCase();
  strOut += firstChar + remainChar + ' ';
  }
  else
  strOut += arrStr[i] + ' ';
  
  i++;
  }
  return strOut.substr(0,strOut.length - 1);
}
JS ASP.NET - Adicionar / Remover itens em um DropDownList.
function ClearDropDownList(list)
{
 for(i=list.options.length-1; i>=0 ;i--)
 {
  list.remove(i);
 }
}
function addDropDownListOption(list, text, value)
{
 var optn = document.createElement("OPTION");
 optn.text = text;
 optn.value = value;
 list.options.add(optn);
}
JS MSCRM 4.0 - Validação de campo Data via JavaScript.
if (ValidateDate(crmForm.all.requestdeliveryby))
{
   // Custom code...
}
function ValidateDate(field){
var checkstr = "0123456789";
var DateField = field;
var Datevalue = "";
var DateTemp = "";
var seperator = ".";
var leap = 0;
var err = 0;
var i;
err = 0;
var day = DateField.DataValue.getDate();
var month = (DateField.DataValue.getMonth()+1);
var year = DateField.DataValue.getYear();
DateValue = day + "/" + month + "/" + year;
   /* Delete all chars except 0..9 */
   for (i = 0; i < DateValue.length; i++) {
   if (checkstr.indexOf(DateValue.substr(i,1)) >= 0) {
      DateTemp = DateTemp + DateValue.substr(i,1);
   }
   }
   DateValue = DateTemp;
   /* Validation of month*/
   if ((month < 1) || (month > 12)) {
      err = 21;
   }
   /* Validation of day*/
   if (day < 1) {
     err = 22;
   }
   /* Validation leap-year / february / day */
   if ((year % 4 == 0) || (year % 100 == 0) || (year % 400 == 0)) {
      leap = 1;
   }
   if ((month == 2) && (leap == 1) && (day > 29)) {
      err = 23;
   }
   if ((month == 2) && (leap != 1) && (day > 28)) {
      err = 24;
   }
   /* Validation of other months */
   if ((day > 31) && ((month == "01") || (month == "03") || (month == "05") || (month == "07") || (month == "08") || (month == "10") || (month == "12"))) {
      err = 25;
   }
   if ((day > 30) && ((month == "04") || (month == "06") || (month == "09") || (month == "11"))) {
      err = 26;
   }
   /* if 00 ist entered, no error, deleting the entry */
   if ((day == 0) && (month == 0) && (year == 00)) {
      err = 0; day = ""; month = ""; year = ""; seperator = "";
   }
   if (err != 0)
   {
      alert("Data Inválida!");
      DateField.focus();
   }
   return (err == 0);
}
JS MSCRM 4.0 - Inserir / Formatar objetos dinamicamente na página do CRM.
with(crmForm.all.new_labelicms)
{
style.border = 0;
style.color = '#6699cc';
style.fonteSize = '7px';
style.fontWeight = 'bold';
style.overflow = 'hidden';
Disabled = true;
DataValue = 'Obs % ICMS: No caso de venda direta...'
}
/* Insert Adjacent Elements */
var server = window.location.host;
var oImg = document.createElement("<" + "img src='http://" + server + "/_imgs/ico/16_alert.gif'" + " />");
var oHr = document.createElement("<" + "HR class='ms-crm-MenuList-Spacer'" + ">");
var oSpn = document.createElement("<" + "span" + ">");
oSpn.innerText = ' Observações';
oSpn.style.fontWeight = 'bold';
crmForm.all.mit_labelicms.insertAdjacentElement("BeforeBegin",oImg);
crmForm.all.mit_labelicms.insertAdjacentElement("BeforeBegin",oSpn);
crmForm.all.mit_labelicms.insertAdjacentElement("BeforeBegin",oHr);
JS MSCRM 4.0 - AJAX no CRM - Chamada assíncrona em um Web Services Customizado.
function FillUOMProduct()
{
var xmlHttpRequest = new ActiveXObject("Msxml2.XMLHTTP");
var server = window.location.host;
var params = "?productID=" + crmForm.all.productid.DataValue[0].id;
params += "&fields=productnumber,defaultuomid";
var url="http://"+ server+"/WebServicesCRM/Product.asmx/GetProductById"+params;
xmlHttpRequest.open("GET", url, true);
xmlHttpRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xmlHttpRequest.setRequestHeader ("SOAPAction", "http://tempuri.org/GetProductById");
xmlHttpRequest.onreadystatechange = HandleStateChangeProduct;
xmlHttpRequest.send();
}
function HandleStateChangeProduct()
{
   if (xmlHttpRequest.readyState == 4)
   {
      var doc = new ActiveXObject('Microsoft.XMLDOM');
      var result = xmlHttpRequest.responseXML.xml;
      doc.loadXML(result);
   }
}



 
 
Nenhum comentário:
Postar um comentário
<< Ao enviar um comentário, favor clicar na opção [Enviar por e-mail comentários de acompanhamento para gtezini@gmail.com] >>