【发布时间】:2015-01-09 23:16:41
【问题描述】:
这是我的代码(我使用 codeigniter 作为我的框架,这是视图)。 此代码应在单击提交按钮后将名为 contains 的 div 的内容写入名为 newfile.php 的文件中。但我需要在将数据写入 newfile.php 之前单击该按钮 2 次。请帮忙。我不知道我的代码有什么问题。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Online Lodging Locator</title>
</head>
<script>
function test(){
var x = document.getElementById('contain').innerHTML;
alert(document.my_form.my_var.value=x);
<?php
$content = $_POST["my_var"];
$myfile = fopen("newfile.php", "w") or die("Unable to open file!");
fwrite($myfile, $content);
fclose($myfile);
?>
}
</script>
<body>
<form name="my_form" method="post">
<input type="hidden" name="my_var">
<div id="contain">
<h1>Online Lodging Locator</h1>
<table cellspacing="0" cellpadding="1" border="1">
<tr>
<td>COL 1 - ROW 1222<br />COLSPAN 3</td>
<td>COL 2 - ROW 1</td>
<td>COL 3 - ROW 1</td>
</tr>
<tr>
<td rowspan="2">COL 2 - ROW 2 - COLSPAN 2<br /></td>
<td>COL 3 - ROW 2</td>
</tr>
<tr>
<td>COL 3 - ROW 3</td>
</tr>
</table>
</div>
<button type="submit" class="btn btn-default" name="SEARCH" id="SEARCH" onclick="test()">WRITE</button>
</form>
</body>
</html>
【问题讨论】:
-
你知道PHP无论如何都会先运行吧?您是否也知道它第一次运行时 my_var 完全不包含任何内容?您需要的是一个 ajax 调用,您可以将数据输入并将数据写入新文件。
-
尝试将 $(document).ready(function(){your js} 放在你的 js 中
-
@Rhillz 没有使用 jQuery。这将导致范围问题和
$未定义这一事实引发错误 -
@Royalty 我不知道。如何使用 ajax 提供数据以将其写入新文件?
-
$Rhillz 我尝试放置 $(document).ready(function(){my js} 但即使单击 2 次也无法使用。
标签: javascript php codeigniter