我有一个textarea和这个javascript代码它应该工作,但dosen是否有问题?如果是这样,它是什么?
$('#text').load("http://hokuco.com/test/xe7/user.txt");

<form action="formcode.php" method="POST">
<textarea name='field2' placeholder='Code here' rows ="40" cols="40" id ="text"></textarea>
<br />
<input type="submit" name="submit" value="Save">
</form>
&#13;
这是我的php文件,如果好奇:
<?php
if(isset($_POST['field1']) && isset($_POST['field2'])) {
$data = $_POST['field1'] . '-' . $_POST['field2'] . "\n";
$ret = file_put_contents('code.txt', $data, FILE_APPEND | LOCK_EX);
if($ret === false) {
die('There was an error writing this file');
}
else {
echo "$ret bytes written to file";
}
}
else {
die('no post data to process');
}
?>
&#13;
答案 0 :(得分:2)
由于浏览器安全限制,大多数Ajax请求都遵循相同的原始策略;请求无法从其他域,子域,端口或协议中成功检索数据。
我假设.txt文件与尝试加载它的HTML文件不在同一服务器/域上?如果你是,那么你应该使用相对URL,即:
$('#text').load("xe7/user.txt");
答案 1 :(得分:0)
这有用吗?
的jQuery
$(function(){
$.ajax({
url : "http://hokuco.com/test/xe7/user.txt",
dataType: "text",
success : function (data) {
$("#text").html(data);
}
});
});
HTML
<div id="text"></div>
答案 2 :(得分:0)
正如其他用户所说,您违反了相同的原始政策。 如果你使用PHP,你可以将它回应到你的textarea。
有些事情:
<textarea id="text">
<?php
$text = file_get_contents('http://hokuco.com/test/xe7/user.txt');
echo $text;
?>
</textarea>
答案 3 :(得分:0)
如果以上代码全部存在(正如您在评论中所说的那样),并且您已经包含了jQuery,那么仅仅刷新页面就不会给您带来结果。由于您的HTML代码低于此jQuery调用,因此在调用函数时DOM尚未就绪。因此,您需要在文档准备就绪时调用此函数,根据以下规则:所有与DOM元素相关的jQuery调用都应该这样:
$(document).ready(function(){
$('#text').load("test/xe7/user.txt");
});