[英]Get value from a textbox and pass to the next text box as suggestion
$ partOne = strtok($ filename,'。');我有一个文本框,假设是url:
<label>URL:</label>
<input name="url" type="text" id="url" size="20" />
我想获取该URL的姓氏,以在用户单击此处键入时显示在第二个文本框中:
<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;
?>
我已经试过了:
$('input[name=url]').focusout(function(){
var url = $('input[name=url]').val();
if(url.indexOf('/') != -1) // If there is a slash in the url.. 'google.at/test.html'
{
var urlarray = url.split('/'); // Split the url into an array..
var urlerg = urlarray[urlarray.length-1]; // Take the last item of the array
$('#dlist').append('<option value="'+ urlerg+ '">'+urlerg +'</option>');
}
else
{
$('#dlist').append('<option value="'+url+'">'+url+'</option>');
}
});
这是输入/数据列表项:
<label>URL:</label>
<input name="url" type="text" id="url" size="20" />
<label>NAME:</label>
<input name="name" type="text" list="dlist" id="name" size="20" />
<datalist id="dlist">
</datalist>
因此,当我在URL输入中输入“ www.google.at/test.html”时,我会在NAME输入中输入建议“ test.html”。 如果我只写了一个不带“ /”的文件名,那么我只会得到文件名。
问候
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.