Стандартный минимальный javascript в ASP.NET.

   1:  function WebForm_PostBackOptions(eventTarget, eventArgument, validation, validationGroup, actionUrl, trackFocus, clientSubmit) {
   2:      this.eventTarget = eventTarget;
   3:      this.eventArgument = eventArgument;
   4:      this.validation = validation;
   5:      this.validationGroup = validationGroup;
   6:      this.actionUrl = actionUrl;
   7:      this.trackFocus = trackFocus;
   8:      this.clientSubmit = clientSubmit;
   9:  }
  10:  function WebForm_DoPostBackWithOptions(options) {
  11:      var validationResult = true;
  12:      if (options.validation) {
  13:          if (typeof(Page_ClientValidate) == 'function') {
  14:              validationResult = Page_ClientValidate(options.validationGroup);
  15:          }
  16:      }
  17:      if (validationResult) {
  18:          if ((typeof(options.actionUrl) != "undefined") && (options.actionUrl != null) && (options.actionUrl.length > 0)) {
  19:              theForm.action = options.actionUrl;
  20:          }
  21:          if (options.trackFocus) {
  22:              var lastFocus = theForm.elements["__LASTFOCUS"];
  23:              if ((typeof(lastFocus) != "undefined") && (lastFocus != null)) {
  24:                  if (typeof(document.activeElement) == "undefined") {
  25:                      lastFocus.value = options.eventTarget;
  26:                  }
  27:                  else {
  28:                      var active = document.activeElement;
  29:                      if ((typeof(active) != "undefined") && (active != null)) {
  30:                          if ((typeof(active.id) != "undefined") && (active.id != null) && (active.id.length > 0)) {
  31:                              lastFocus.value = active.id;
  32:                          }
  33:                          else if (typeof(active.name) != "undefined") {
  34:                              lastFocus.value = active.name;
  35:                          }
  36:                      }
  37:                  }
  38:              }
  39:          }
  40:      }
  41:      if (options.clientSubmit) {
  42:          __doPostBack(options.eventTarget, options.eventArgument);
  43:      }
  44:  }
  45:  var __pendingCallbacks = new Array();
  46:  var __synchronousCallBackIndex = -1;
  47:  function WebForm_DoCallback(eventTarget, eventArgument, eventCallback, context, errorCallback, useAsync) {
  48:      var postData = __theFormPostData +
  49:                  "__CALLBACKID=" + WebForm_EncodeCallback(eventTarget) +
  50:                  "&__CALLBACKPARAM=" + WebForm_EncodeCallback(eventArgument);
  51:      if (theForm["__EVENTVALIDATION"]) {
  52:          postData += "&__EVENTVALIDATION=" + WebForm_EncodeCallback(theForm["__EVENTVALIDATION"].value);
  53:      }
  54:      var xmlRequest,e;
  55:      try {
  56:          xmlRequest = new XMLHttpRequest();
  57:      }
  58:      catch(e) {
  59:          try {
  60:              xmlRequest = new ActiveXObject("Microsoft.XMLHTTP");
  61:          }
  62:          catch(e) {
  63:          }
  64:      }
  65:      var setRequestHeaderMethodExists = true;
  66:      try {
  67:          setRequestHeaderMethodExists = (xmlRequest && xmlRequest.setRequestHeader);
  68:      }
  69:      catch(e) {}
  70:      var callback = new Object();
  71:      callback.eventCallback = eventCallback;
  72:      callback.context = context;
  73:      callback.errorCallback = errorCallback;
  74:      callback.async = useAsync;
  75:      var callbackIndex = WebForm_FillFirstAvailableSlot(__pendingCallbacks, callback);
  76:      if (!useAsync) {
  77:          if (__synchronousCallBackIndex != -1) {
  78:              __pendingCallbacks[__synchronousCallBackIndex] = null;
  79:          }
  80:          __synchronousCallBackIndex = callbackIndex;
  81:      }
  82:      if (setRequestHeaderMethodExists) {
  83:          xmlRequest.onreadystatechange = WebForm_CallbackComplete;
  84:          callback.xmlRequest = xmlRequest;
  85:          xmlRequest.open("POST", theForm.action, true);
  86:          xmlRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
  87:          xmlRequest.send(postData);
  88:          return;
  89:      }
  90:      callback.xmlRequest = new Object();
  91:      var callbackFrameID = "__CALLBACKFRAME" + callbackIndex;
  92:      var xmlRequestFrame = document.frames[callbackFrameID];
  93:      if (!xmlRequestFrame) {
  94:          xmlRequestFrame = document.createElement("IFRAME");
  95:          xmlRequestFrame.width = "1";
  96:          xmlRequestFrame.height = "1";
  97:          xmlRequestFrame.frameBorder = "0";
  98:          xmlRequestFrame.id = callbackFrameID;
  99:          xmlRequestFrame.name = callbackFrameID;
 100:          xmlRequestFrame.style.position = "absolute";
 101:          xmlRequestFrame.style.top = "-100px"
 102:          xmlRequestFrame.style.left = "-100px";
 103:          try {
 104:              if (callBackFrameUrl) {
 105:                  xmlRequestFrame.src = callBackFrameUrl;
 106:              }
 107:          }
 108:          catch(e) {}
 109:          document.body.appendChild(xmlRequestFrame);
 110:      }
 111:      var interval = window.setInterval(function() {
 112:          xmlRequestFrame = document.frames[callbackFrameID];
 113:          if (xmlRequestFrame && xmlRequestFrame.document) {
 114:              window.clearInterval(interval);
 115:              xmlRequestFrame.document.write("");
 116:              xmlRequestFrame.document.close();
 117:              xmlRequestFrame.document.write('<html><body><form method="post"><input type="hidden" name="__CALLBACKLOADSCRIPT" value="t"></form></body></html>');
 118:              xmlRequestFrame.document.close();
 119:              xmlRequestFrame.document.forms[0].action = theForm.action;
 120:              var count = __theFormPostCollection.length;
 121:              var element;
 122:              for (var i = 0; i < count; i++) {
 123:                  element = __theFormPostCollection[i];
 124:                  if (element) {
 125:                      var fieldElement = xmlRequestFrame.document.createElement("INPUT");
 126:                      fieldElement.type = "hidden";
 127:                      fieldElement.name = element.name;
 128:                      fieldElement.value = element.value;
 129:                      xmlRequestFrame.document.forms[0].appendChild(fieldElement);
 130:                  }
 131:              }
 132:              var callbackIdFieldElement = xmlRequestFrame.document.createElement("INPUT");
 133:              callbackIdFieldElement.type = "hidden";
 134:              callbackIdFieldElement.name = "__CALLBACKID";
 135:              callbackIdFieldElement.value = eventTarget;
 136:              xmlRequestFrame.document.forms[0].appendChild(callbackIdFieldElement);
 137:              var callbackParamFieldElement = xmlRequestFrame.document.createElement("INPUT");
 138:              callbackParamFieldElement.type = "hidden";
 139:              callbackParamFieldElement.name = "__CALLBACKPARAM";
 140:              callbackParamFieldElement.value = eventArgument;
 141:              xmlRequestFrame.document.forms[0].appendChild(callbackParamFieldElement);
 142:              if (theForm["__EVENTVALIDATION"]) {
 143:                  var callbackValidationFieldElement = xmlRequestFrame.document.createElement("INPUT");
 144:                  callbackValidationFieldElement.type = "hidden";
 145:                  callbackValidationFieldElement.name = "__EVENTVALIDATION";
 146:                  callbackValidationFieldElement.value = theForm["__EVENTVALIDATION"].value;
 147:                  xmlRequestFrame.document.forms[0].appendChild(callbackValidationFieldElement);
 148:              }
 149:              var callbackIndexFieldElement = xmlRequestFrame.document.createElement("INPUT");
 150:              callbackIndexFieldElement.type = "hidden";
 151:              callbackIndexFieldElement.name = "__CALLBACKINDEX";
 152:              callbackIndexFieldElement.value = callbackIndex;
 153:              xmlRequestFrame.document.forms[0].appendChild(callbackIndexFieldElement);
 154:              xmlRequestFrame.document.forms[0].submit();
 155:          }
 156:      }, 10);
 157:  }
 158:  function WebForm_CallbackComplete() {
 159:      for (i = 0; i < __pendingCallbacks.length; i++) {
 160:          callbackObject = __pendingCallbacks[i];
 161:          if (callbackObject && callbackObject.xmlRequest && (callbackObject.xmlRequest.readyState == 4)) {
 162:              WebForm_ExecuteCallback(callbackObject);
 163:              if (!__pendingCallbacks[i].async) {
 164:                  __synchronousCallBackIndex = -1;
 165:              }
 166:              __pendingCallbacks[i] = null;
 167:              var callbackFrameID = "__CALLBACKFRAME" + i;
 168:              var xmlRequestFrame = document.getElementById(callbackFrameID);
 169:              if (xmlRequestFrame) {
 170:                  xmlRequestFrame.parentNode.removeChild(xmlRequestFrame);
 171:              }
 172:          }
 173:      }
 174:  }
 175:  function WebForm_ExecuteCallback(callbackObject) {
 176:      var response = callbackObject.xmlRequest.responseText;
 177:      if (response.charAt(0) == "s") {
 178:          if ((typeof(callbackObject.eventCallback) != "undefined") && (callbackObject.eventCallback != null)) {
 179:              callbackObject.eventCallback(response.substring(1), callbackObject.context);
 180:          }
 181:      }
 182:      else if (response.charAt(0) == "e") {
 183:          if ((typeof(callbackObject.errorCallback) != "undefined") && (callbackObject.errorCallback != null)) {
 184:              callbackObject.errorCallback(response.substring(1), callbackObject.context);
 185:          }
 186:      }
 187:      else {
 188:          var separatorIndex = response.indexOf("|");
 189:          if (separatorIndex != -1) {
 190:              var validationFieldLength = parseInt(response.substring(0, separatorIndex));
 191:              if (!isNaN(validationFieldLength)) {
 192:                  var validationField = response.substring(separatorIndex + 1, separatorIndex + validationFieldLength + 1);
 193:                  if (validationField != "") {
 194:                      var validationFieldElement = theForm["__EVENTVALIDATION"];
 195:                      if (!validationFieldElement) {
 196:                          validationFieldElement = document.createElement("INPUT");
 197:                          validationFieldElement.type = "hidden";
 198:                          validationFieldElement.name = "__EVENTVALIDATION";
 199:                          theForm.appendChild(validationFieldElement);
 200:                      }
 201:                      validationFieldElement.value = validationField;
 202:                  }
 203:                  if ((typeof(callbackObject.eventCallback) != "undefined") && (callbackObject.eventCallback != null)) {
 204:                      callbackObject.eventCallback(response.substring(separatorIndex + validationFieldLength + 1), callbackObject.context);
 205:                  }
 206:              }
 207:          }
 208:      }
 209:  }
 210:  function WebForm_FillFirstAvailableSlot(array, element) {
 211:      var i;
 212:      for (i = 0; i < array.length; i++) {
 213:          if (!array[i]) break;
 214:      }
 215:      array[i] = element;
 216:      return i;
 217:  }
 218:  var __nonMSDOMBrowser = (window.navigator.appName.toLowerCase().indexOf('explorer') == -1);
 219:  var __theFormPostData = "";
 220:  var __theFormPostCollection = new Array();
 221:  function WebForm_InitCallback() {
 222:      var count = theForm.elements.length;
 223:      var element;
 224:      for (var i = 0; i < count; i++) {
 225:          element = theForm.elements[i];
 226:          var tagName = element.tagName.toLowerCase();
 227:          if (tagName == "input") {
 228:              var type = element.type;
 229:              if ((type == "text" || type == "hidden" || type == "password" ||
 230:                  ((type == "checkbox" || type == "radio") && element.checked)) &&
 231:                  (element.id != "__EVENTVALIDATION")) {
 232:                  WebForm_InitCallbackAddField(element.name, element.value);
 233:              }
 234:          }
 235:          else if (tagName == "select") {
 236:              var selectCount = element.options.length;
 237:              for (var j = 0; j < selectCount; j++) {
 238:                  var selectChild = element.options[j];
 239:                  if (selectChild.selected == true) {
 240:                      WebForm_InitCallbackAddField(element.name, element.value);
 241:                  }
 242:              }
 243:          }
 244:          else if (tagName == "textarea") {
 245:              WebForm_InitCallbackAddField(element.name, element.value);
 246:          }
 247:      }
 248:  }
 249:  function WebForm_InitCallbackAddField(name, value) {
 250:      var nameValue = new Object();
 251:      nameValue.name = name;
 252:      nameValue.value = value;
 253:      __theFormPostCollection[__theFormPostCollection.length] = nameValue;
 254:      __theFormPostData += name + "=" + WebForm_EncodeCallback(value) + "&";
 255:  }
 256:  function WebForm_EncodeCallback(parameter) {
 257:      if (encodeURIComponent) {
 258:          return encodeURIComponent(parameter);
 259:      }
 260:      else {
 261:          return escape(parameter);
 262:      }
 263:  }
 264:  var __disabledControlArray = new Array();
 265:  function WebForm_ReEnableControls() {
 266:      if (typeof(__enabledControlArray) == 'undefined') {
 267:          return false;
 268:      }
 269:      var disabledIndex = 0;
 270:      for (var i = 0; i < __enabledControlArray.length; i++) {
 271:          var c;
 272:          if (__nonMSDOMBrowser) {
 273:              c = document.getElementById(__enabledControlArray[i]);
 274:          }
 275:          else {
 276:              c = document.all[__enabledControlArray[i]];
 277:          }
 278:          if ((typeof(c) != "undefined") && (c != null) && (c.disabled == true)) {
 279:              c.disabled = false;
 280:              __disabledControlArray[disabledIndex++] = c;
 281:          }
 282:      }
 283:      setTimeout("WebForm_ReDisableControls()", 0);
 284:      return true;
 285:  }
 286:  function WebForm_ReDisableControls() {
 287:      for (var i = 0; i < __disabledControlArray.length; i++) {
 288:          __disabledControlArray[i].disabled = true;
 289:      }
 290:  }
 291:  function WebForm_FireDefaultButton(event, target) {
 292:          if (event.keyCode == 13 && !(event.srcElement && (event.srcElement.tagName.toLowerCase() == "textarea"))) {
 293:          var defaultButton;
 294:          if (__nonMSDOMBrowser) {
 295:              defaultButton = document.getElementById(target);
 296:          }
 297:          else {
 298:              defaultButton = document.all[target];
 299:          }
 300:          if (defaultButton && typeof(defaultButton.click) != "undefined") {
 301:              defaultButton.click();
 302:              event.cancelBubble = true;
 303:              if (event.stopPropagation) event.stopPropagation();
 304:              return false;
 305:          }
 306:      }
 307:      return true;
 308:  }
 309:  function WebForm_GetScrollX() {
 310:      if (__nonMSDOMBrowser) {
 311:          return window.pageXOffset;
 312:      }
 313:      else {
 314:          if (document.documentElement && document.documentElement.scrollLeft) {
 315:              return document.documentElement.scrollLeft;
 316:          }
 317:          else if (document.body) {
 318:              return document.body.scrollLeft;
 319:          }
 320:      }
 321:      return 0;
 322:  }
 323:  function WebForm_GetScrollY() {
 324:      if (__nonMSDOMBrowser) {
 325:          return window.pageYOffset;
 326:      }
 327:      else {
 328:          if (document.documentElement && document.documentElement.scrollTop) {
 329:              return document.documentElement.scrollTop;
 330:          }
 331:          else if (document.body) {
 332:              return document.body.scrollTop;
 333:          }
 334:      }
 335:      return 0;
 336:  }
 337:  function WebForm_SaveScrollPositionSubmit() {
 338:      if (__nonMSDOMBrowser) {
 339:          theForm.elements['__SCROLLPOSITIONY'].value = window.pageYOffset;
 340:          theForm.elements['__SCROLLPOSITIONX'].value = window.pageXOffset;
 341:      }
 342:      else {
 343:          theForm.__SCROLLPOSITIONX.value = WebForm_GetScrollX();
 344:          theForm.__SCROLLPOSITIONY.value = WebForm_GetScrollY();
 345:      }
 346:      if ((typeof(this.oldSubmit) != "undefined") && (this.oldSubmit != null)) {
 347:          return this.oldSubmit();
 348:      }
 349:      return true;
 350:  }
 351:  function WebForm_SaveScrollPositionOnSubmit() {
 352:      theForm.__SCROLLPOSITIONX.value = WebForm_GetScrollX();
 353:      theForm.__SCROLLPOSITIONY.value = WebForm_GetScrollY();
 354:      if ((typeof(this.oldOnSubmit) != "undefined") && (this.oldOnSubmit != null)) {
 355:          return this.oldOnSubmit();
 356:      }
 357:      return true;
 358:  }
 359:  function WebForm_RestoreScrollPosition() {
 360:      if (__nonMSDOMBrowser) {
 361:          window.scrollTo(theForm.elements['__SCROLLPOSITIONX'].value, theForm.elements['__SCROLLPOSITIONY'].value);
 362:      }
 363:      else {
 364:          window.scrollTo(theForm.__SCROLLPOSITIONX.value, theForm.__SCROLLPOSITIONY.value);
 365:      }
 366:      if ((typeof(theForm.oldOnLoad) != "undefined") && (theForm.oldOnLoad != null)) {
 367:          return theForm.oldOnLoad();
 368:      }
 369:      return true;
 370:  }
 371:  function WebForm_TextBoxKeyHandler(event) {
 372:      if (event.keyCode == 13) {
 373:          var target;
 374:          if (__nonMSDOMBrowser) {
 375:              target = event.target;
 376:          }
 377:          else {
 378:              target = event.srcElement;
 379:          }
 380:          if ((typeof(target) != "undefined") && (target != null)) {
 381:              if (typeof(target.onchange) != "undefined") {
 382:                  target.onchange();
 383:                  event.cancelBubble = true;
 384:                  if (event.stopPropagation) event.stopPropagation();
 385:                  return false;
 386:              }
 387:          }
 388:      }
 389:      return true;
 390:  }
 391:  function WebForm_AppendToClassName(element, className) {
 392:      var current = element.className;
 393:      if (current) {
 394:          if (current.charAt(current.length - 1) != ' ') {
 395:              current += ' ';
 396:          }
 397:          current += className;
 398:      }
 399:      else {
 400:          current = className;
 401:      }
 402:      element.className = current;
 403:  }
 404:  function WebForm_RemoveClassName(element, className) {
 405:      var current = element.className;
 406:      if (current) {
 407:          if (current.substring(current.length - className.length - 1, current.length) == ' ' + className) {
 408:              element.className = current.substring(0, current.length - className.length - 1);
 409:              return;
 410:          }
 411:          if (current == className) {
 412:              element.className = "";
 413:              return;
 414:          }
 415:          var index = current.indexOf(' ' + className + ' ');
 416:          if (index != -1) {
 417:              element.className = current.substring(0, index) + current.substring(index + className.length + 2, current.length);
 418:              return;
 419:          }
 420:          if (current.substring(0, className.length) == className + ' ') {
 421:              element.className = current.substring(className.length + 1, current.length);
 422:          }
 423:      }
 424:  }
 425:  function WebForm_GetElementById(elementId) {
 426:      if (document.getElementById) {
 427:          return document.getElementById(elementId);
 428:      }
 429:      else if (document.all) {
 430:          return document.all[elementId];
 431:      }
 432:      else return null;
 433:  }
 434:  function WebForm_GetElementByTagName(element, tagName) {
 435:      var elements = WebForm_GetElementsByTagName(element, tagName);
 436:      if (elements && elements.length > 0) {
 437:          return elements[0];
 438:      }
 439:      else return null;
 440:  }
 441:  function WebForm_GetElementsByTagName(element, tagName) {
 442:      if (element && tagName) {
 443:          if (element.getElementsByTagName) {
 444:              return element.getElementsByTagName(tagName);
 445:          }
 446:          if (element.all && element.all.tags) {
 447:              return element.all.tags(tagName);
 448:          }
 449:      }
 450:      return null;
 451:  }
 452:  function WebForm_GetElementDir(element) {
 453:      if (element) {
 454:          if (element.dir) {
 455:              return element.dir;
 456:          }
 457:          return WebForm_GetElementDir(element.parentNode);
 458:      }
 459:      return "ltr";
 460:  }
 461:  function WebForm_GetElementPosition(element) {
 462:      var result = new Object();
 463:      result.x = 0;
 464:      result.y = 0;
 465:      result.width = 0;
 466:      result.height = 0;
 467:      if (element.offsetParent) {
 468:          result.x = element.offsetLeft;
 469:          result.y = element.offsetTop;
 470:          var parent = element.offsetParent;
 471:          while (parent) {
 472:              result.x += parent.offsetLeft;
 473:              result.y += parent.offsetTop;
 474:              var parentTagName = parent.tagName.toLowerCase();
 475:              if (parentTagName != "table" &&
 476:                  parentTagName != "body" && 
 477:                  parentTagName != "html" && 
 478:                  parentTagName != "div" && 
 479:                  parent.clientTop && 
 480:                  parent.clientLeft) {
 481:                  result.x += parent.clientLeft;
 482:                  result.y += parent.clientTop;
 483:              }
 484:              parent = parent.offsetParent;
 485:          }
 486:      }
 487:      else if (element.left && element.top) {
 488:          result.x = element.left;
 489:          result.y = element.top;
 490:      }
 491:      else {
 492:          if (element.x) {
 493:              result.x = element.x;
 494:          }
 495:          if (element.y) {
 496:              result.y = element.y;
 497:          }
 498:      }
 499:      if (element.offsetWidth && element.offsetHeight) {
 500:          result.width = element.offsetWidth;
 501:          result.height = element.offsetHeight;
 502:      }
 503:      else if (element.style && element.style.pixelWidth && element.style.pixelHeight) {
 504:          result.width = element.style.pixelWidth;
 505:          result.height = element.style.pixelHeight;
 506:      }
 507:      return result;
 508:  }
 509:  function WebForm_GetParentByTagName(element, tagName) {
 510:      var parent = element.parentNode;
 511:      var upperTagName = tagName.toUpperCase();
 512:      while (parent && (parent.tagName.toUpperCase() != upperTagName)) {
 513:          parent = parent.parentNode ? parent.parentNode : parent.parentElement;
 514:      }
 515:      return parent;
 516:  }
 517:  function WebForm_SetElementHeight(element, height) {
 518:      if (element && element.style) {
 519:          element.style.height = height + "px";
 520:      }
 521:  }
 522:  function WebForm_SetElementWidth(element, width) {
 523:      if (element && element.style) {
 524:          element.style.width = width + "px";
 525:      }
 526:  }
 527:  function WebForm_SetElementX(element, x) {
 528:      if (element && element.style) {
 529:          element.style.left = x + "px";
 530:      }
 531:  }
 532:  function WebForm_SetElementY(element, y) {
 533:      if (element && element.style) {
 534:          element.style.top = y + "px";
 535:      }
 536:  }


Comments ( )
<00>  <01>  <02>  <03>  <04>  <05>  <06>  <07>  <08>  <09>  <10>  <11>  <12>  <13>  <14>  <15>  <16>  <17>  <18>  <19>  <20>  <21>  <22>  <23
Link to this page: //www.vb-net.com/asp2/42/script1.htm
<SITEMAP>  <MVC>  <ASP>  <NET>  <DATA>  <KIOSK>  <FLEX>  <SQL>  <NOTES>  <LINUX>  <MONO>  <FREEWARE>  <DOCS>  <ENG>  <CHAT ME>  <ABOUT ME>  < THANKS ME>