如何在此代码中将rowNumber变量发送到dataSourcephp文件?
function getData(dataSource, divID,rowNumber)
{
if(XMLHttpRequestObject)
{
var obj = document.getElementById(divID);
XMLHttpRequestObject.open("GET", dataSource);
XMLHttpRequestObject.onreadystatechange = function()
{
if (XMLHttpRequestObject.readyState == 4 &&
XMLHttpRequestObject.status == 200)
{
obj.value = XMLHttpRequestObject.responseText;
}
}
XMLHttpRequestObject.send(null);
}
}
Run Code Online (Sandbox Code Playgroud)
PHP文件(数据源):
<?php
//mysql connection
$result = mysql_query( 'CALL view_polls(`rowNumber`);' );
$row=mysql_fetch_array($result);
echo $row['title'];
?>
Run Code Online (Sandbox Code Playgroud) 我是一名iPhone开发人员,他对网络开发很陌生,所以如果我在这里犯了愚蠢的错误,请原谅我:
我想要完成的是当用户从下拉列表中选择一个项目时,它会调用一些javascript,这会将一个AJAX请求引发到我所拥有的返回一些JSON的PHP文件. - 该JSON包括缩略图图像文件名和图像的标题.这些需要分别传入我的文档中的图像和文本字段.
问题是,尝试评估json后失败了.- 同样的事情发生了eval(json);,JSON.parse(json);我通过调用document.write('something')来解决这个问题.定期在我的回应方法中. - 它总是能够写到它解析json的点.
我确信我的PHP是有效的,我的请求很好(我可以从JS输出响应).
这是我在下拉列表中选择新项目时调用的函数:
function changeImage(id){
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
var res=xmlhttp.responseText;
var responseObject = eval(res);
var caption = responseObject.caption;
var textField = document.getElementById('caption');
textField.value = caption;
var imagePreview = document.getElementById('imgPreview');
imagePreview.src = responseObject.filename;
}
}
xmlhttp.open("GET","getCaption.php?id="+id,true);
xmlhttp.send();
}
Run Code Online (Sandbox Code Playgroud)
当我输出res(或手动访问php文件)时,JSON看起来像这样:
{"caption":"A caption","filename":"myimage_thumb.jpg"}
Run Code Online (Sandbox Code Playgroud)
为什么JSON …
我有一个表单页面,我想将表单详细信息提交给我的服务器,并将详细信息存储在服务器中.
我需要一个脚本将客户端的请求发送到服务器,我想使用JavaScript.
我在搜索时遇到了XMLHttpRequest.
有谁能请我指出正确的方向?
我正在使用此功能来检查网页是否存在.为此,我正在检查它是否有标题.但我总是得到404,即使有一个空白的网址..我在这里做错了什么?
var xmlhttp;
function checkURL(url){
xmlhttp=null; // initialize the request object
// All the browsers except for the old IE
if (window.XMLHttpRequest)
{
xmlhttp=new XMLHttpRequest()
xmlhttp.onreadystatechange=xmlhttpChange
xmlhttp.open("HEAD",url,true)
xmlhttp.send(null)
}
// old IE
else if (window.ActiveXObject)
{
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")
if (xmlhttp)
{
xmlhttp.onreadystatechange=xmlhttpChange
xmlhttp.open("HEAD",url,true)
xmlhttp.send();
}
}
}
function xmlhttpChange()
{
// if loaded
if (xmlhttp.readyState==4)
{
// if head exists "OK"
if (xmlhttp.status==200)
{
alert('URL exists')
}
else
{
alert("Status is "+xmlhttp.status)
}
}
}
Run Code Online (Sandbox Code Playgroud) 有问题的用户脚本:http ://userscripts.org/scripts/show/130532
在将其创建的网站更新为HTML5之后,我不得不更新脚本。但是,现在有一个很大的问题。当我启动包含XMLHttpRequest的脚本的主要功能时,它只是向这些控制台发送垃圾邮件,直到浏览器崩溃。
现在,我在StackOverflow和Google中四处寻找可以帮助我的东西,但是没有任何帮助。
如果继续尝试该脚本,请小心,因为它会使浏览器崩溃。至少在FF 11.00中对我有用
码:
// ==UserScript==
// @name Where my thread at
// @include *//boards.4chan.org/*/res/*
// ==/UserScript==
(function () {
"use strict";
var board = document.location.href.match(/https?:\/\/boards\.4chan\.org\/[\w]+/i), threadNo = location.pathname.match(/\/res\/([\d]+)/i), main = document.getElementsByName("delform")[0], is404 = 0, ttt = null, b, c, num, timer, html, i, l, no, found, xhr1, xhr2, cstatus, ui, pg;
function lookup(resp) {
html = resp.match(/<div class="postContainer opContainer".*?<\/div>[^<]*?<\/div>/gi);
if (html) {
l = html.length;
for (i = 0; i < l; i += i) …Run Code Online (Sandbox Code Playgroud) 这个问题是关于IE到Opera 12浏览器的StackOverflow问题的扩展.
根问题是geoxml3处理kmz(压缩的kml)文件中的问题.
正在使用ZipFile.complete.js的修改版本中的TypedArrays处理二进制数据
传输二进制文件后,在Opera 12中未正确填充Uint8Array,就好像数据被导入为16位元素一样.
请求配置如下:
this.req.responseType = 'arraybuffer';
this.req.overrideMimeType('text/plain; charset=x-user-defined');
Run Code Online (Sandbox Code Playgroud)
返回的值如下处理:
var fileContents = binStream.req.response;
binStream.length = fileContents.byteLength;
binStream.array = new Uint8Array(fileContents);
Run Code Online (Sandbox Code Playgroud)
在Opera 12中,前八个字节的填充如下:
0x004B0050; 给出十进制值4915280
但应该是:
0x4034B50; 小数值67324752.
这在Firefox,Chrome和IE中正常工作(具有解决方法).
有谁知道我怎么能说服Opera 12正确填充Uint8Array?或者一个解决方法,以便它可以工作(某种方式将16位字节数组转换为8位字节数组,尽可能有效地丢弃不需要的高8位)?这是Opera 12中最近实现TypedArray/XmlHttpRequest的已知错误吗?
我正在寻找一种将包含HTML数据的字符串插入div元素的方法。该字符串是通过XHR加载的,无法知道其中包含哪些元素。
我搜索了一下,发现了一些可能会有所帮助的东西,但对我来说并不完全有效。我需要的是类似于Prototype框架中的update()函数的东西:http : //prototypejs.org/api/element/update
我正在编写的平台不允许使用框架或JQuery。我坚持使用Javascript。有人有想法么?
我不能使用innerHTML,因为它不应用任何更新或功能,或基本上不应该在加载时发生的任何事情
我有一些onload事件需要发生,据我所知,使用innerHTML不会执行onload事件。我不正确吗?
两年后编辑:对于其他阅读者,我对该onload事件有一些严重的误解。我希望这对任何元素都是有效事件,而仅对<body/>元素有效。 .innerHTML是执行我要寻找的适当方法,并且添加元素的任何其他功能都需要以其他方式手动完成。
如何在不使用jQuery但仅使用纯JavaScript的情况下重写下面的jQuery.Ajax调用?
谢谢!
$.ajax({
type: 'POST',
url: url,
contentType: 'application/json',
data: JSON.stringify(request),
success: function (result) {
alert("Submitted succesfully!");
},
error: function (jqXHR, textStatus, errorThrown) {
alert('Error Occured' + errorThrown);
}
});
Run Code Online (Sandbox Code Playgroud) 我想在我的应用程序中使用最清晰的代码.所以我决定将xhr调用和解析与view.js分开.为此我添加了:
在View.js中
this._pagePromises.push(myapp.Services.Foo.getFoo()
.then(
function success(results) {
var x = results;
},
function error() {
// TODO - handle the error.
}
));
Run Code Online (Sandbox Code Playgroud)
并在Services.js
Foo:
{
getFoo: function () {
WinJS.xhr({ url: "http://sampleurl.com" }).done(
function completed(request) {
//parse request
var obj = myapp.Parser.parse(request);
return obj;
},
function error(request) {
// handle error conditions.
}
);
}
}
Run Code Online (Sandbox Code Playgroud)
但我有这个例外:
0x800a138f - JavaScript的运行时错误:无法获取的未定义或为空引用属性"然后"
我想有:的getFoo()完成时启动承诺在view.js做一些东西,并更新视图.我不这样做的正确的方式,但作为C#developper我有一些困难,了解了这种模式.
编辑:有我更新的代码:
getFoo: function () {
var promise = WinJS.xhr({ url: myapp.WebServices.getfooUrl() });
promise.done(
function completed(request) {
var xmlElements …Run Code Online (Sandbox Code Playgroud) 我想通过REST API将服务证书添加到Azure的CloudService中.目前我有这个:
继承我的请求主体:基于此文档
<?xml version="1.0" encoding="utf-8"?>
<CertificateFile xmlns="http://schemas.microsoft.com/windowsazure">
<Data>MIIB3TCCAUagAwIBAgIQfgPuTBadfItGHpKyYRiRoTANBgkqhkiG9w0BAQUFADAtMSswKQYDVQQDHiIAYwBlAGQAdgBpAGwAbABcAGMAZQBkAHYAaQBsAGwAMAAwMB4XDTEzMDcxNTA4MjIwN1oXDTE0MDcxNTE0MjIwN1owLTErMCkGA1UEAx4iAGMAZQBkAHYAaQBsAGwAXABjAGUAZAB2AGkAbABsADAAMDCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA2AB6hYWdqu/IG2Jo17tuHpmVsxNqGG5ROnNTtKZd4c7UtQ287EW5McRXqkfBmiwGIe3Pb3S0bd0q51YhT1WhQkGMMwwYLiAmALBct4OK3KNodl0t+rSO5R0Wq9YIaLq3o5HTGAR4wdKhaC/n1uJWPzD+TjkRRHnfEagWPtVjsMECAwEAATANBgkqhkiG9w0BAQUFAAOBgQCBLwjd3e1PaxvEy+Y1nqpTX8q/0ZsS2jVjCgRti0vehLGFlDEbL2rMhzGMo9zjQbXFzGCInMukFUhEI+OWkOBnBIIiYvTkKIFQWpLN7imIiRVuuqGFwslmESBySSO40M56jPXZ7/D0g8d8WDCfO1YoneDv4CuJE97lMTTyEjUJwg==</Data>
<CertificateFormat>cer</CertificateFormat>
</CertificateFile>
Run Code Online (Sandbox Code Playgroud)
但它给了我错误:指定证书的文件格式无效.证书文件必须是Base64编码的.pfx文件.
我确定Base64中的证书.我所做的就是使用并手动将相同的My.cer文件上传到不同的云服务,并使用列表服务证书查看其Base64.
certificate xmlhttprequest azure ssl-certificate x509certificate
xmlhttprequest ×10
javascript ×9
ajax ×3
php ×2
azure ×1
certificate ×1
dom ×1
element ×1
jquery ×1
json ×1
opera ×1
promise ×1
userscripts ×1
winjs ×1