繁体   English   中英

自动填写表单域

[英]Filling out a form field automatically

我的管理面板中有一个表单,我希望管理员有权通过该表单创建新页面。

在这个表单中有两个字段,类别名称和 URL。

我希望当管理员填写类别字段时,URL 字段会自动填充。

假设管理员输入类别名称作为审计和报告,那么 URL 应填写为审计和报告.php。

这是我的代码:

  <td height="26" align="right" ><span class="required">*</span> Name :</td>
  <td>
    <input type="text" name="category_name" value=""   placeholder="Your Catgeory Name" size="40" /> <a href="#" class="url_from_title">Create URL</a><br />

    <div id="error_url_creator" class="red"></div>
  </td>
 </tr>
 <tr class="trOdd">
<td height="26" align="right"><span class="required">**</span> Page URL :
</td>
</tr>

如何做到这一点?

您可以创建一个 JavaScript 事件方法,用连字符“-”替换空格。 这将在更改/模糊文本框时触发。 例如

   function getUrl(txtBoxText){
    return txtBoxText.toLowerCase().replace(/ /g,"-")+”.php”;
}

您可以根据需要更改连字符。

使用像这样的 html,在其中使用 data-*,就像使用 data-timestamp 一样。

    <input class="category-input" type="text" data-category-url="audits-and-reporting.php" name="category_name" value="" placeholder="Your Catgeory Name" size="40" /> 

然后你可以使用 jQuery 的 data 函数来获取它,你会像这样使用:

   $(input).data("category-url");

在这种情况下。 只有当您的类别输入元素上出现您想要的事件(可能是焦点或模糊)时,您才会使用它。 它可能像

$(".category-input").on("focusout blur", function(){
       var url = $(this).data("category-url");
       // Now you can place that url wherever you want
});

- -编辑 - -

如果必须动态生成 url,请使用javascript 的 encodeURI而不是 data-* 东西。

HTML

<table>
    <tr>
        <td><span class="required">*</span> Name :</td>
        <td>
            <input type="text" name="category_name" value="" placeholder="Your Catgeory Name" size="40" id="Catname" />
            <a href="#" class="url_from_title" onclick="CreateURL()">Create URL</a><br />

            <div id="error_url_creator" class="red"></div>
        </td>
    </tr>
    <tr class="trOdd">
        <td>
            <span class="required">*</span> Page URL :
            <input type="text" id="CreatedURL" name="URL" />
        </td>
    </tr>
</table>

Javascript

 function CreateURL() {
    var CatName = document.getElementById("Catname").value;
    var URL = CatName.toLowerCase();
    var replacedString = URL.replace(/ /g, "-");
    var FinalURL = replacedString + ".php";
    document.getElementsByName('URL')[0].value = FinalURL;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM