合众百科 > 百科 > 原生js传递数据

原生js传递数据

2024-10-25 11:33:53百科

今天合众百科就给我们广大朋友来聊聊js传递参数方法,以下关于观点希望能帮助到您找到想要的答案。

如何用原生js发送jsonp请求

如何用原生js发送jsonp请求

优质回答//    引入进去

<script>

function ajax(options) {

  options = options || {};

  options.type = (options.type || "GET").toUpperCase();

  options.dataType = options.dataType || 'json';

  options.async = options.async || true;

  options.timeout=options.timeout||8000;//超时处理,默认8s

  var params = getParams(options.data);

  var timeoutFlag=null;

  var xhr;

  var that=this;

  if (window.XMLHttpRequest) {

      xhr = new XMLHttpRequest();

  } else {

      xhr = new ActiveXObject('Microsoft.XMLHTTP')

  }

  xhr.onreadystatechange = function() {

      if(options.dataType === 'json'){

          if (xhr.readyState == 4) {

              window.clearTimeout(that.timeoutFlag);

              var status = xhr.status;

              if (status >= 200 && status < 300) {

                  // 如果需要像 html 表单那样 POST 数据,请使用 setRequestHeader() 来添加 http 头。

                  options.success && options.success(xhr.responseText, xhr.responseXML);

              } else {

                  options.fail && options.fail(status);

              }

          }

      } else {

          if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {

              window.clearTimeout(that.timeoutFlag);

              var oScript = document.createElement('script');

              document.body.appendChild(oScript);

              var callbackname = 'ajaxCallBack'

              oScript.src = options.url + "" +  params+'&callback='+callbackname;

              window['ajaxCallBack'] = function(data) {

                  options.success(data);

                  document.body.removeChild(oScript);

              };

          }

      }

  };

  if (options.type == 'GET') {

      xhr.open("GET", options.url + '' + params, options.async);

      xhr.send(null)

  } else if (options.type == 'POST') {

      xhr.open('POST', options.url, options.async);

      if(options.contentType=="undefined"||options.contentType==null){

          xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');

          xhr.send(params);

      }else{

          xhr.setRequestHeader('Content-Type', options.contentType);

          xhr.send(JSON.stringify(options.data));

      }

  }

  this.timeoutFlag=window.setTimeout(function(){//计时器,超时后处理

      window.clearTimeout(that.timeoutFlag);

      //options.fail("timeout");

      xhr.abort();

  }.bind(this),options.timeout);

}

function getParams(data) {

  var arr = [];

  for (var param in data) {

      arr.push(encodeURIComponent(param) + '=' + encodeURIComponent(data[param]));

  }

  return arr.join('&');

}

</script>

//    使用

<script>

ajax({

    url: ";, //请求地址

    type: 'GET', //请求方式

    async:true,//同步异步设置

    timeout:8000,//超时设置

    data: {

      userName:$("#username").val(),

    phoneNumber:$("#userphone").val(),

    orderType:'8',

    requirementDetail:'',

    method:'homedecapi.decOrder.insertDecOrder',

    orderSource:'无忧居官网PC'

    }, //请求参数

    success: function(response, xml) {

        if(JSON.parse(response).decOrder_insertDecOrder_response){

          // alert("预约成功")

          $("#mypopup").css('display','block')

        }else{

          alert("预约失败")

        }

    },

    fail: function(status) {

        console.log('状态码为' + status); // 此处为请求失败后的回调

    }

});

</script>

js中如何获取htmlColloection中成员的值?详见问题补充

优质回答一般可以用原生js及jQuery获取html元素的值。

<div id="test">数值</div>

原生js写法:

alert(document.getElementById('test').innerHTML);//数值

jQuery写法:

alert($('#test').html());//数值

说明:

innerHTML是取元素的内部html代码,此例中即div内部的所有html代码

html()方法作用也是取dom节点的内部html内容,是jQuery中的函数方法

$keyup用原生的js怎么实现

优质回答var $ = {

getJSON: function(url, params, callbackFuncName, callback){

var paramsUrl ="",

jsonp = this.getQueryString(url)[callbackFuncName];

for(var key in params){

paramsUrl+="&"+key+"="+encodeURIComponent(params[key]);

}

url+=paramsUrl;

window[jsonp] = function(data) {

window[jsonp] = undefined;

try {

delete window[jsonp];

} catch(e) {}

if (head) {

head.removeChild(script);

}

callback(data);

};

var head = document.getElementsByTagName('head')[0];

var script = document.createElement('script');

script.charset = "UTF-8";

script.src = url;

head.appendChild(script);

return true;

},

getQueryString: function(url) {

var result = {}, queryString = (url && url.indexOf("")!=-1 && url.split("")[1]) || location.search.substring(1),

re = /([^&=]+)=([^&]*)/g, m;

while (m = re.exec(queryString)) {

result[decodeURIComponent(m[1])] = decodeURIComponent(m[2]);

}

return result;

}

};

什么是原生JS

优质回答原生态JS是指遵循ECMAscript标准的javascript,不同于微软的jscript也不依赖于任何框架,依托于浏览器标准引擎的脚本语言。

jquery是在原生态的js上集成的框架资源,使用jquery并不代表代码就不是你写的,区别在于使用jquery只是使用了它的语法,更利于兼容以及实现,jquery已经将常规的js兼容问题解决,所以使用起来出现不兼容的情况会更少,更利于开发。

但同时,要使用jquery等框架也需要去学习相关的语法,拥有js基础的同学学习jquery时会发现很轻松,在使用时也会发现很方便。

扩展资料

JS基本特点:

JavaScript是一种属于网络的脚本语言,已经被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果。通常JavaScript脚本是通过嵌入在HTML中来实现自身的功能的。

1、是一种解释性脚本语言(代码不进行预编译)。

2、主要用来向HTML(标准通用标记语言下的一个应用)页面添加交互行为。

3、可以直接嵌入HTML页面,但写成单独的js文件有利于结构和行为的分离。

4、跨平台特性,在绝大多数浏览器的支持下,可以在多种平台下运行(如Windows、Linux、Mac、Android、iOS等)。

Javascript脚本语言同其他语言一样,有它自身的基本数据类型,表达式和算术运算符及程序的基本程序框架。

Javascript提供了四种基本的数据类型和两种特殊数据类型用来处理数据和文字。而变量提供存放信息的地方,表达式则可以完成较复杂的信息处理。

参考资料:百度百科-javascript

jsp迁移到react

优质回答将JSP迁移到React是一个相对较复杂的过程,因为JSP是基于Java的服务端渲染技术,而React是一种现代的前端框架,使用JavaScript进行客户端渲染。

在进行迁移之前,需要注意以下几点:

1. 架构差异:JSP通常是使用MVC(Model-View-Controller)架构,而React使用的是组件化的架构。因此,在迁移过程中,需要重新设计和构建前端组件。

2. 数据传递:在JSP中,可以使用JavaBean等方式将数据从后端传递到前端。而在React中,可以使用props和state来传递数据。需要考虑如何将原有的数据传递方式转换成React的方式。

3. 渲染方式:JSP是服务器端渲染,而React是客户端渲染。在迁移过程中,需要将原有的JSP页面改写成React组件,并使用React的虚拟DOM来进行渲染。

下面是基本的迁移步骤:

1. 确定迁移范围:确定要迁移的JSP页面,并根据页面的复杂度和重要性进行优先级排序。

2. 实现组件化:将JSP页面拆分为更小的组件,每个组件对应一个React组件。这样可以提高代码的可维护性和重用性。考虑使用React的生命周期方法和Hooks来处理组件的状态和副作用。

3. 数据传递:分析原有的数据传递方式,使用React的props和state来实现数据的传递和管理。可以考虑使用全局状态管理库,如Redux或Mobx来统一管理应用的状态。

4. 修改路由和导航:如果原有的JSP页面使用了服务器端路由,需要改用React的前端路由库,如React Router。同时需要修改导航链接和路由配置。

5. 添加样式:在JSP页面中,可能使用了原生的CSS或其他样式框架。在React中,可以使用CSS模块、CSS-in-JS工具或CSS框架,如Bootstrap来管理样式。

6. 迁移测试:在迁移完成后,进行全面的测试和调试,确保页面的功能和用户体验没有受到影响。

需要注意的是,JSP和React有着不同的设计思想和技术栈,迁移过程中可能会遇到各种挑战。为了顺利完成迁移,建议寻求专业人士的帮助,以确保迁移过程和结果的质量。

看完本文,相信你已经得到了很多的感悟,也明白跟js传递参数方法这些问题应该如何解决了,如果需要了解其他的相关信息,请点击合众百科的其他内容。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息储存空间服务,不拥有所有权,不承担相关法律责任。如有发现本站涉嫌抄袭侵权/违法违规的内容,请发送邮件,一经查实,本站将立刻删除。

猜你喜欢

  • 广西到山东快递费多少?百科

    广西到山东快递费多少?

    广西到山东快递费多少?答首重15元(1kg内),续重9元/kg中通从广西寄到山东所需要的费用会受到多种因素的影响,例如距离、物件重量等,距离越远,物...

    2024-10-25 152
  • btc矿机如何运作百科

    btc矿机如何运作

    海外矿机是什么答海外赚取比特币的电脑。矿机,就是用于赚取比特币的电脑,这类电脑一般有专业的挖矿晶元,多采用烧显卡的方式工作,耗电量较大。...

    2024-10-25 115
  • 药酒米窝料制作方法-药酒窝料比例百科

    药酒米窝料制作方法-药酒窝料比例

    中药窝料制作配方大全最佳答案中药窝料制作配方大全如下:钓鱼窝料的中药绝密配方:首先准备5克茴香、3克丁香、5克麝香、5克阿魏、高度曲酒1000克、...

    2024-10-25 183
  • 丙烯树脂化学成分百科

    丙烯树脂化学成分

    丙烯树脂化学成分答丙烯类树脂包括聚丙烯树脂、以丙烯为主要成分的共聚物以及述树脂为主通过共混而得到的塑料合金。(1)聚丙烯,是由丙烯聚合而制...

    2024-10-25 136
  • 想入驻北京海鲜市场,都有哪些大的批发市场?百科

    想入驻北京海鲜市场,都有哪些大的批发市场?

    想入驻北京海鲜市场,都有哪些大的批发市场?最佳答案京港水产品商城京城的海鲜市场向来是扎堆在南城,住在北边的想买点新鲜便宜的海鲜都要穿越半...

    2024-10-25 117
  • 筛查方法WC-眼睛的保护?有方法吖?百科

    筛查方法WC-眼睛的保护?有方法吖?

    眼睛的保护?有方法吖?答恢复视力的辅助训练方法1、远方凝视:找一处10米以外的草地或绿树:绿色由于波长较短,成像在视网膜之前,促使眼部调节放松...

    2024-10-25 127
  • 原生js传递数据百科

    原生js传递数据

    如何用原生js发送jsonp请求优质回答//    引入进去<script>function ajax(options) {  options = options || {};  opt...

    2024-10-25 171
  • 正确的搓手方法百科

    正确的搓手方法

    正确洗手的步骤有哪些?最佳答案第一步(内):洗手掌,流水湿润双手,涂抹洗手液(或肥皂),掌心相对,手指并拢相互揉搓。第二步(外):洗背侧...

    2024-10-25 63
  • 固体废弃物的处理方法百科

    固体废弃物的处理方法

    固体废物再利用需要办理什么手续?答申报材料:1、废品回收行业办理营业证照在全国没有统一的标准,少数地方需要到公安分局去办特种行业许可证(对...

    2024-10-25 146
  • 厦门港式奶茶费用,珍珠奶茶加盟店品牌哪个好?百科

    厦门港式奶茶费用,珍珠奶茶加盟店品牌哪个好

    珍珠奶茶加盟店品牌哪个好?答【点击了解更多加盟项目】1.品牌特许商资质,最好自己四处先了解一下,不必马上定下来,先考查品牌特许商公司的实力...

    2024-10-25 139
  • 网络赚钱的方法2020百科

    网络赚钱的方法2020

    网上怎么赚钱最佳答案在网上赚钱的方式有:自媒体赚钱、网络主播、做电商推广、出售装备、运营兼职。1、自媒体赚钱2、网络主播2020年一场突然起来的...

    2024-10-25 132
  • 小学二年级奥数数角的方法百科

    小学二年级奥数数角的方法

    二年级奥数题及答案:三角形规律答以下是 为大家整理的关于二年级奥数题及答案:三角形规律的文章,希望大家能够喜欢!按下面的规律摆三角形,第...

    2024-10-25 147
  • 石家庄医专费用—石家庄人民医学高等专科学校学费百科

    石家庄医专费用—石家庄人民医学高等专科学校

    石家庄人民医学高等专科学校学费最佳答案石家庄人民医学高等专科学校学费介绍如下:石家庄人民医学高等专科学校学费是6500。石家庄人民医学高等专科...

    2024-10-25 170
  • 自驾游郴州百科

    自驾游郴州

    郴州自驾游十大必去景点?优质回答郴州市位于湖南省南部,有许多自然风光和人文景点。以下是建议的十大必去景点:1. 邓陵:是汉代明帝刘庄的陵墓,...

    2024-10-25 94
  • 铜钱古币价格乾隆通宝百科

    铜钱古币价格乾隆通宝

    乾隆通宝铜钱价格表?最佳答案目前“乾隆通宝”雕母市场价格平均5万元左右。“乾隆通宝”母钱的价格大都在千元,而普通流通的乾隆通宝一般则在5-...

    2024-10-25 161
  • 追踪审计费用——审计过程的五个阶段百科

    追踪审计费用——审计过程的五个阶段

    审计过程的五个阶段最佳答案审计过程的五个阶段包括计划、评价、测试、报告和追踪。其目的是为了发现和提高组织的内部控制以及监督组织的财务报告...

    2024-10-25 67
  • 英语rule 和 goven 意思都是“统治”但是我想知道它们用起来有什么区别?百科

    英语rule 和 goven 意思都是“统治”但是我想知道

    英语rule 和 goven 意思都是“统治”但是我想知道它们用起来有什么区别?答rule 和 govern 虽然都有统治和管理的含义,不过咬文嚼字还是略有区别的,先说...

    2024-10-25 99
  • 徐州培训书法费用!徐州书法培训学校百科

    徐州培训书法费用!徐州书法培训学校

    徐州有什么地方可以学书法?最佳答案徐州书法培训-徐州市至诚培训学校为弘扬中华民族的传统文化,提高学生美育水平,并且使学生在练习书法的过程中...

    2024-10-25 109
  • 广州到西安开车得花多钱?百科

    广州到西安开车得花多钱?

    广州到西安开车得花多钱?最佳答案最短路线:广州,转“北环高速”(大约8公里)转“北二环高速”转“广清高速”清远、连州方向(大约270公里)出广...

    2024-10-25 57
  • 河北省数控专业哪个学校好百科

    河北省数控专业哪个学校好

    河北省数控专业哪个学校好优质回答河北数控专业学校排名第一的是河北机电职业技术学院。随着我国工业不断发展,制造业有了长足的进步,数控专业的...

    2024-10-25 122