首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >表单输入文本模式中的可选字符

表单输入文本模式中的可选字符
EN

Stack Overflow用户
提问于 2020-02-14 19:00:16
回答 1查看 138关注 0票数 0

对不起,如果这个问题在其他地方得到了答复,请指出我的方向。

使用Node和EJS,我有一个用于捕获啤酒厂名称的表单字段,这是通过一个API.

代码语言:javascript
复制
<label>Brewery</label><br>
<input id="formBreweryName" class="form-control" type="text" name="breweryname" ><br>
<label>Beer Name</label><br>
<input id="formBeerName" class="form-control" type="text" name="beername" >

这里的ejs既在<ul>中显示啤酒厂名称,又包含用于填充表单的onclick处理程序.

代码语言:javascript
复制
 <ul>
    <% BeerList.forEach(function(objsofbeer){ %>
       <li>
          <a onclick="addFormText( '<%= objsofbeer.brewery.brewery_name %>','<%= objsofbeer.beer.beer_name %>')">
          <span><%= objsofbeer.brewery.brewery_name %></span><br>
          <span><%= objsofbeer.beer.beer_name %></span><br>      
          </a>
       </li>
</ul>

把啤酒厂的名字移植到表格上的javascript .

代码语言:javascript
复制
var addFormText = function( breweryName, beerName) {
    document.getElementById('formBreweryName').value = breweryName;
    document.getElementById('formBeerName').value = beerName;
      }

API给了我一个啤酒厂的名字。

代码语言:javascript
复制
brewery_name: 'Reuben\'s Brews',

我在上面的代码中加上了啤酒的名字,这是为了更好的措施。

The Issue

当啤酒厂名称中有撇号时,啤酒厂名称将不显示在适当的表单字段中,但啤酒厂名称在该节中显示。

在大多数例子中,啤酒厂名称没有撇号。因此,API啤酒厂名称如预期的那样显示在表单字段中。但是就像上面的例子一样,啤酒厂的名字有一个撇号,所以这个名字不会出现在我的表单字段中。

我希望有一个非javascript,模式属性的解决方案,让我可以选择包括撇号(或其他不可预见的特殊字符)的文本。如果没有,那么我愿意接受javascript或其他建议。

我看到了许多“使用模式来排除某些字符”或“使用模式强迫用户只使用这个给定的文本模式”的例子。但是,我没有看到任何允许可选包含字符的(或者任何其他特殊字符的可选包含)。

如果这似乎是一个超出我的表单输入字段的问题,我很乐意分享更多我的编码。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-02-15 23:56:21

不确定,但我认为问题是在重音之前需要一个双转义字符,一个用于服务器上的ejs,另一个用于浏览器上的js。您能否尝试使用<%-而不是<%= (EJS doesn't escape characters)。抱歉我没用过ejs。另一种尝试,非常丑陋.

代码语言:javascript
复制
<ul>
<% BeerList.forEach(function(objsofbeer){ %>
<%   objsofbeer.brewery.brewery_name = objsofbeer.brewery.brewery_name.replace("'","\\'"); %>
<%   objsofbeer.beer.beer_name = objsofbeer.beer.beer_name.replace("'","\\'"); %>
   <li>
      <a onclick="addFormText( '<%= objsofbeer.brewery.brewery_name %>','<%= objsofbeer.beer.beer_name %>')">
      <span><%= objsofbeer.brewery.brewery_name %></span><br>
      <span><%= objsofbeer.beer.beer_name %></span><br>      
      </a>
   </li>

或者尝试使用“字符”或“

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60232114

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档