有什么方法可以编辑URL以嵌入表单条目?

时间:2018-07-09 14:47:44

标签: javascript html angular

我知道,如果为表单分配了ID,则可以将表单值作为参数嵌入到URL中。但是,如果没有ID怎么办?

例如,此页面中的“搜索”字段:

http://au.autodesk.com/speaker-resource-center/call-for-proposals/voting

<input type="text" placeholder="Search " class="form-control ng-valid ng-dirty search-box" ng-model="search.$" ng-change="updateButtons()">

2 个答案:

答案 0 :(得分:0)

  

我知道,如果为表单分配了ID,则可以将表单值作为参数嵌入到URL中。

那是不正确的。

页面上的服务器端(有时是客户端)代码可以读取查询字符串,以设置表单控件的默认值(通常是这样,如果前一个表单中存在错误,则可以更正并重新提交表单)尝试)。

在这些情况下,name属性通常将映射到查询字符串(因为该表单将从name属性生成查询字符串)。通常,输入将被赋予与其id相同的name

它完全在网站作者的控制之下。

没有另一方提供允许您执行此操作的机制,就无法在另一站点上设置输入值。

答案 1 :(得分:-1)

有几种不同的方法可以做到这一点。查看该HTML,这是div中的第一个文本类型输入,因此想到的第一个方法是:

您可以拉出div(使用“搜索区域”类),然后定位该div中的第一个文本输入框。我不知道您使用的是jQuery还是本机JS,或者您使用的是哪种语言/库/框架。

JQuery类似于:

var inputElement = $(".search-area")[0].first()

这样的答案可能会有所帮助:

jQuery: how to find first visible input/select/textarea excluding buttons?

编辑添加:答案是针对输入元素。就像其他人提到的答案一样。您实际上无法使用URL做您想做的事情。

再次编辑。误解了问题。如果有人需要知道如何将没有ID的输入字段作为目标,我将在此处保留此内容。另外,如果有人要删除此答案,我也没有问题。