<script language="javascript">
function getjson(){
var xmlReq ;
try{
xmlReq = new ActiveXObject("MicrosoftXML>
要获取其他文件下的元素,那么当前页面和另外的页面必须有关联才可以。
比如要从iframe的子页面,获取父页面的元素可以这样写:
parentdocumentgetElementById('a1');
比如要从windowopen的页面中,获取父页面的元素可以这样写:openerdocumentgetElementById("a1");
file是一种特殊的input,不能被赋值,也不能被javascript取值,只能随表单提交,而且随表单提交的也是file路径所指向的文件本身。
这是浏览器安全原因所限制的,如果可以取值和赋值的话,那么javascript就可以随意获取你电脑上的文件了,这是非常危险的
js不能用于 *** 作文件,但是可以通过JS调用PHP等程序对文件流进行 *** 作,我这里只涉及前端调用(JQ AJAX,注意要引用JQ类库,并且AJAX必须在服务端才能运行,也就是你必须搭建服务器),至于你文档 *** 作的程序这个得自行搞定了。
<!DOCTYPE HTML>
<html>
<head>
<meta >
如果要使用js读取json文件,那么ajax *** 作是必须的了。原生ajax有点麻烦,我想你们项目一定用了什么js库,这里给个jquery的例子:
$get('xxjson路径', function(data){alert(data); // data即为json文件内容里的json数据
}, 'json');
如果把这个文件的内容读取为纯文本,可以修改$get的最后一个参数json为text,或者删掉这个参数,默认也是text。
js读取CSV格式数据,参考如下:
<script type="text/javascript">// This will parse a delimited string into an array of
// arrays The default delimiter is the comma, but this
// can be overriden in the second argument
function CSVToArray( strData, strDelimiter ){
// Check to see if the delimiter is defined If not,
// then default to comma
strDelimiter = (strDelimiter || ",");
// Create a regular expression to parse the CSV values
var objPattern = new RegExp(
(
// Delimiters
"(\\" + strDelimiter + "|\\r\\n|\\r|^)" +
// Quoted fields
"(:\"([^\"](:\"\"[^\"]))\"|" +
// Standard fields
"([^\"\\" + strDelimiter + "\\r\\n]))"
),
"gi"
);
// Create an array to hold our data Give the array
// a default empty first row
var arrData = [[]];
// Create an array to hold our individual pattern
// matching groups
var arrMatches = null;
// Keep looping over the regular expression matches
// until we can no longer find a match
while (arrMatches = objPatternexec( strData )){
// Get the delimiter that was found
var strMatchedDelimiter = arrMatches[ 1 ];
// Check to see if the given delimiter has a length
// (is not the start of string) and if it matches
// field delimiter If id does not, then we know
// that this delimiter is a row delimiter
if (
strMatchedDelimiterlength &&
(strMatchedDelimiter != strDelimiter)
){
// Since we have reached a new row of data,
// add an empty row to our data array
arrDatapush( [] );
}
// Now that we have our delimiter out of the way,
// let's check to see which kind of value we
// captured (quoted or unquoted)
if (arrMatches[ 2 ]){
// We found a quoted value When we capture
// this value, unescape any double quotes
var strMatchedValue = arrMatches[ 2 ]replace(
new RegExp( "\"\"", "g" ),
"\""
);
} else {
// We found a non-quoted value
var strMatchedValue = arrMatches[ 3 ];
}
// Now that we have our value string, let's add
// it to the data array
arrData[ arrDatalength - 1 ]push( strMatchedValue );
}
// Return the parsed data
return( arrData );
}
</script>
以上就是关于怎样用原生JS直接读取.json后缀的文件全部的内容,包括:怎样用原生JS直接读取.json后缀的文件、js如何获取file控件的完整路径、JS获取其他文件的某个元素等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)