$partOne = strtok($filename, '.');我有一个文本框,假设是 url:
<label>URL:</label>
<input name="url" type="text" id="url" size="20" />
当用户单击第二个文本框输入时,我希望该网址的姓氏显示在第二个文本框中:
<label>NAME:</label>
<input name="name" type="text" id="name" size="20" />
我尝试过的:
<script type="text/javascript">
function myFunction() {
var url = document.getElementById('url').value;
var name = <?php $path = parse_url($_GET['url'], PHP_URL_PATH); $filename = basename($path);$partOne = strtok($filename, '.'); echo $partOne; ?>;
document.getElementById('name').value = name;
}
</script>
并制作一个按钮来测试它:
<button onclick="myFunction()">Test Button!</button>
但是看起来java脚本有问题,怀疑是java脚本部分的php。 我如何归档我的目的(最终解决方案是不单击测试按钮;用户单击第二个框,那里有一个他们可以编辑的文本)。
最佳答案
此时您需要一个 ajax 调用。您期望的行为不能通过上述方式完成。一旦页面显示在浏览器上,就不再有 PHP
,只有 HTML 和 JS。这是因为 PHP 是一种服务器端语言。
您有两个选项可以使表单按照您的需要工作,要么使用 Javascript 执行 URL 处理步骤,要么让 Ajax 在后台从服务器获取结果。
<label>URL:</label>
<input name="url" type="text" id="url" size="20" />
<label>NAME:</label>
<input name="name" type="text" id="name" size="20" />
<script>
$("#url").change(function()
{
$.ajax({
url:"parseurl.php?key="+$("#url").val(),
}).done(function(data)
{
$("#name").val(data);
});
});
</script>
其中 parseurl.php
是
<?php
$path = parse_url($_GET['key'], PHP_URL_PATH);
$filename = basename($path);$partOne = strtok($filename, '.');
echo $partOne;
?>
关于javascript - 从文本框中获取值并作为建议传递到下一个文本框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26057964/