根据客户输入更新链接


Update link based upon customer input

我有以下输入字段:

<input data-type="customerName" value="<?php echo isset($invoice['Client']['customerName']) ? $invoice['Client']['customerName']: ''; ?>"  type="text" class="form-control" id="clientCompanyName" placeholder="Company Name">

当用户键入它时,它会利用自动完成从我的sql数据库中提取数据并显示名称,然后用户选择从数据库中提取的名称。

保存表单时,名称和uuid都会保存到表单中

<a target="_blank" href="add-client.php?uuid=<?php echo isset($invoice['Client']['customeruuid']) ? $invoice['Client']['customeruuid']: ''; ?>">

此链接到另一个页面以更新客户端信息,但只有在保存表单后才能工作。

我正试图在用户选择customerName后立即使链接始终有效。有办法做到这一点吗?

是的,您需要使用jquery和ajax,php代码在页面加载时在服务器上运行,在页面打开时不会动态应用。您需要使用javascript或jquery来处理用户输入,而无需重新加载页面。如果此用户输入需要查询数据库,则必须使用一个单独的php页面,并使用$.ajax+jquery访问该信息。

我强烈建议您采用AngularJS方式。您可以使用表达式来动态设置链接的格式。

检查此项:http://www.w3schools.com/angular/angular_expressions.asp

<div ng-app="" ng-init="myName='Foo'">
<input type="text" ng-model="myName">
<a ng-href="http:''www.{{myName}}.com">{{myName}}</a>

将"Foo"替换为从数据库中检索的内容,这样就可以开始了。

如果你想测试它是如何工作的,我做了一个JSFiddle:https://jsfiddle.net/ny39728p/