虽然这看起来很简单但我很难找到真正的解决方案。我需要做的是根据下拉列表的选择将文本添加/附加到隐藏输入的值。下拉列表中的值将添加/附加到随机生成的ID作为后缀,应该如下所示" 12345678_myBrand"。这很容易做到,但我需要在下拉选项更改时更改文本(而不是整个值),而只需添加/附加最近选择的下拉选项。
以下是我正在做的事情
HTML:
<input id="myHiddenField" type="text">
<select id="brand">
<option value="">Please Select</option>
<option value="First Choice">First Choice</option>
<option value="Second Choice">Second Choice</option>
<option value="Third Choice">Third Choice</option>
<option value="Fourth Choice">Fourth Choice</option>
</select>
jQuery的:
jQuery(document).ready(function() {
var brand = $('#brand');
var hiddenField = $('#myHiddenField');
hiddenField.val(1 + Math.floor(Math.random() * 10000000));
brand.change(function() {
hiddenField.val( hiddenField.val() + "_" + brand.val() );
});
});
https://jsfiddle.net/wo6a5nkf/2/
显然我不想继续添加/附加后缀到id,所以如何在不添加/附加所选单个选项的情况下更改文本???
答案 0 :(得分:1)
您可以使用split:
Process.Start("http://localhost:5000")
jQuery(document).ready(function() {
var brand = $('#brand');
var hiddenField = $('#myHiddenField');
hiddenField.val(1 + Math.floor(Math.random() * 10000000));
brand.change(function() {
hiddenField.val( hiddenField.val().split('_')[0] + "_" + brand.val() );
});
});
答案 1 :(得分:0)
您可以解析hiddenField值以查找下划线。如果存在,则重新使用该号码。
brand.change(function() {
var parsedHiddenField = hiddenField.val().split('_');
if (parsedHiddenField.length > 0) {
hiddenField.val(parsedHiddenField[0] + "_" + brand.val());
}
});
这是Fiddle Demo。