Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Smarty输入字段_Javascript_Php_Jquery_Templates_Smarty - Fatal编程技术网

Javascript Smarty输入字段

Javascript Smarty输入字段,javascript,php,jquery,templates,smarty,Javascript,Php,Jquery,Templates,Smarty,我想在Smarty tpl文件中使用jQuery在输入字段中添加一些值。如果主机名输入字段留空,您点击订单按钮,则应在输入字段中添加一个通用域名。比如w1.test.local。但它不起作用 Smarty tpl文件: <div> <input class="hostname-box" type="text" name="domain" required="" value=""> <a href="#host" class="button">Add</a

我想在Smarty tpl文件中使用jQuery在输入字段中添加一些值。如果主机名输入字段留空,您点击订单按钮,则应在输入字段中添加一个通用域名。比如w1.test.local。但它不起作用

Smarty tpl文件:

<div>
<input class="hostname-box" type="text" name="domain" required="" value="">
<a href="#host" class="button">Add</a>
</div>

<div>
<a href="#submit" class="button">Order</a>
</div>
但是得到这个错误:

<div>
<input class="hostname-box" type="text" name="domain" required="" value="">
<a href="#host" class="button">Add</a>
</div>

<div>
<a href="#submit" class="button">Order</a>
</div>
VM3715:3未捕获类型错误:无法读取的属性“替换” 未定义 在兰开夏。(:3:23) 在htmlanchorement.dispatch(jquery.js:3) 位于htmlanchorement.r.handle(jquery.js:3)


可以将输入类用作选择器来更改其值:

$('.button').click(function(){
    var jHostName = $('.hostname-box');
    var hostNameValue = jHostName.text().trim();

    if(hostNameValue === '') {
        jHostName.val("hello.domain.local");
    }
});


我个人会使用除
按钮
之外的其他类,因为它太通用了。

按钮的前面元素没有名为
主机名框
@ElAoutarHamza的属性好的,我该怎么办?你能帮我举个例子吗?我真的不明白你想在代码中做什么,你能解释一下吗?@ElAoutarHamza我有一个必填的输入字段。但你不能让它空白。因此,如果有人将其保留为空,那么如果有人按下“订单”按钮,则应将test.vps.local添加为主机名。动态是什么意思?如果我尝试将自己的值添加到输入字段中,jQuery也会将“hello.domain.local”添加为空。如果是空的,它应该只放“hello.domain.local”