Tag: Ajax

Jquery – Uncaught TypeError:不能使用'in'运算符来search'324'

我试图通过ajax发送Get请求,并输出服务器在HTML中返回的json数据。 但是,我得到了这个错误。 Uncaught TypeError: Cannot use 'in' operator to search for '324' in [{"id":50,"name":"SEO"},{"id":22,"name":"LPO",}] 这是我的代码,通过ajax发送一个Get请求到php文件。 当我使用$ .each方法,它会得到我在上面显示的错误。 parentCat.on('change', function(e){ parentCatId = $(this).val(); $.get( 'index.php?r=admin/post/ajax', {"parentCatId":parentCatId}, function(data){ $.each(data, function(key, value){ console.log(key + ":" + value) }) } ) }) 这是我的PHP代码,返回json格式的查询结果。 public function actionAjax(){ $parentCatId=$_GET['parentCatId']; $catData = Category::getTargetCategoryData($parentCatId); echo CJSON::encode($catData); Yii::app()->end(); } JSON数据输出的PHP是这样的。 [{"id":50,"name":"SEO"},{"id":22,"name":"LPO",}] 任何人都知道如何解决这个问题? 请帮我一下 提前致谢 […]

如何debugging通过AJAX加载的Javascript(特别是jQuery)

我已经改变了我的编码风格,更复杂的项目,以最近“按需”加载页面(和他们的embedded式脚本)。 但是,像这样加载时,很难debugging这些脚本: jQuery.get('/myModularPage', function(html){ /* insert the loaded page into the DOM */ }); 要么 $('#some-container').load('/myOtherPage'); 这些脚本运行完美,但如果我正在debugging,我怎样才能在这些dynamic加载的页面和脚本中设置断点?

ReCaptcha 2.0与AJAX

我已经设法让ReCaptcha 2.0在我的网站上工作。 但是,只有当我不使用AJAX,并让表单“自然”提交时才有效。 我想提交带有validation码的表单,并在不刷新页面的情况下提醒用户注意成功。 我尝试了下面的代码,但是好像服务器没有得到用户响应: HTML: <form class="form" action="javascript:void(0)" novalidate> <!– all the inputs… –> <!– captcha –> <div class="input-group"> <div class="g-recaptcha" data-sitekey="6LdOPgYTAAAAAE3ltWQGar80KUavaR-JblgPZjDI"></div> </div> <div class="errors" id="errors" style="display: none"></div> <div class="input-group"> <input type="button" value="Send" class="btn-default right" id="submit"> <div class="clear"></div> </div> </form> JS: $('#submit').click(function(e) { console.log('clicked submit'); // –> works var $errors = $('#errors'), $status = […]

jQuery UI自动完成:只允许从build议列表中select的值

我正在实现jQuery UI自动完成,并且想知道是否有任何方法只允许从返回的build议结果中进行select,而不是允许将任何值input到文本框中。 我使用这个标签系统非常像这个网站上使用的标签系统,所以我只想让用户从预填充列表中select标签返回到自动完成插件。

通过HTTPS的HTTP Cookie和Ajax请求

我知道这已经以各种forms提出过,但我似乎无法解决这个问题。 我曾尝试使用jQuery和本机JS API来发出Ajax请求。 我的情况如下(见附图): 浏览器发出HTTP请求 服务器响应并设置持久Cookie 浏览器发出HTTP Ajax请求,Cookie是没有问题的 服务器按预期响应,更新Cookie 浏览器发出HTTPS Ajax请求,Cookie不再存在(?!) 服务器提供“默认”响应,因为没有Cookie(意外的行为) 在任何人开始就跨域请求进行演讲之前,请让我列举几件事情: 我知道这是一个跨域请求(不同的协议),这就是为什么服务器在响应中设置了Access-Control-Allow-Origin标头(我使用的是Chrome和Firefox,两者都支持CORS ) 但是我也知道,HTTP cookie应该可以通过HTTPS进行pipe理(参见这里 ),因为主机是相同的 (编辑)正确设置为一般域的cookie(例如.domain.ext),并没有设置HttpOnly和安全标志 那么,为什么呢,为什么呢,为什么浏览器在进行HTTPS Ajax调用时不传递cookie呢? 有任何想法吗? 我即将失去理智 +———–+ HTTP Request +———–+ |Browser |+—————->|Server | +———–+ +———–+ HTTP Response <—————-+ Set-cookie Ajax HTTP Req. +—————-> Cookie (OK) HTTP Response <—————-+ Set-cookie (OK) Ajax HTTPS Req. +—————-> No Cookie (!!!)

当脚本执行时AJAX调用返回时,JavaScript中会发生什么?

假设我写了一些用myCallback执行AJAX调用的myCallback作为AJAX成功执行的callback方法。 假设当myCallback被asynchronous调用时,在我的页面上调用一些其他的JavaScript方法myFunction被调用。 一个操作优先于另一个吗? 他们都在同一时间吗? 怎么了?

使用Ajax XmlHttpRequest上传文件

嗨,我想用这个代码xmlhttprequest发送文件。 <script> var url= "http://localhost:80/…."; $(document).ready(function(){ document.getElementById('upload').addEventListener('change', function(e) { var file = this.files[0]; var xhr = new XMLHttpRequest(); xhr.file = file; // not necessary if you create scopes like this xhr.addEventListener('progress', function(e) { var done = e.position || e.loaded, total = e.totalSize || e.total; console.log('xhr progress: ' + (Math.floor(done/total*1000)/10) + '%'); }, false); if ( […]

如何在jQuery的load()方法中捕获错误

我使用jQuery的.load()方法来检索用户点击一个button时的一些数据。 加载成功完成后,我将结果显示在<div> 。 问题是,在检索数据时load()有时会发生错误。 如何在load()捕获错误?

使用p:calendar相互限制开始和结束date时间(不validation)

我们需要向用户呈现两个p:日历组件,分别代表开始date和结束date。 两个date都有date,小时和分钟。 PrimeFaces具有完善的mindate , maxdate , minHour , maxHour , minMinute和minMinute属性。 现在的要求是: 将开始date时间设置为大于或等于结束date时间是不可能的。 将结束date时间设置为小于或等于结束date时间是不可能的。 下面的公式应该是真实的: begin datetime < end datetime 现在我们尝试了以下JSF: <p:calendar id="begin-date" value="#{debugManager.selectedBeginDate}" mindate="#{debugManager.minBeginDate}" maxdate="#{debugManager.maxBeginDate}" maxHour="#{debugManager.maxBeginHour}" maxMinute="#{debugManager.maxBeginMinute}" pattern="yyyy-MM-dd HH:mm" showButtonPanel="true" readonlyInput="true" navigator="true" showOn="button" required="true"> <p:ajax event="dateSelect" update="end-date" /> </p:calendar> <p:calendar id="end-date" value="#{debugManager.selectedEndDate}" mindate="#{debugManager.minEndDate}" minHour="#{debugManager.minEndHour}" minMinute="#{debugManager.minEndMinute}" pattern="yyyy-MM-dd HH:mm" showButtonPanel="true" readonlyInput="true" navigator="true" showOn="button"> <p:ajax event="dateSelect" update="begin-date" […]

Restlet,CLAP,Ajax和块超时

我们正在使用RESTlet为我们的项目做一个小的REST服务器。 我们在从Applicationinheritance的类中build立了一堆路由: public static void createRestServer(ApplicationContext appCtx, String propertiesPath) throws Exception { // Create a component Component component = new Component(); component.getServers().add(Protocol.HTTP, 8081); component.getClients().add(Protocol.FILE); component.getClients().add(Protocol.CLAP); Context context = component.getContext().createChildContext(); RestServer application = new RestServer(context); application.getContext().getParameters().add("useForwardedForHeader", "true"); application.getContext().getAttributes().put("appCtx", appCtx); application.getContext().getAttributes().put("file", propertiesPath); // Attach the application to the component and start it component.getDefaultHost().attach(application); component.start(); } private RestServer(Context […]