【发布时间】:2018-12-10 08:04:51
【问题描述】:
我有一个数据表,它曾经使用 jQuery 调用来显示一个隐藏的 div,其中包含一个额外的文本输入字段,只有在选择时选择了一个特定选项。它看起来像这样 - 在页面的头部:
jQuery(function ($) {
$('#newSubStatus').change(function () {
$('#showhide').toggle(this.value == 'Option B');
}).change(); // To set the initial state
})
在体内:
<select id="newSubStatus" name="newSubStatus">
<option value="Option A">Option A</option>
<option value="Option B">Option B</option>
<option value="Option C">Option C</option>
<option value="Option D">Option D</option>
<option value="Option E">Option E</option>
<option value="remove">Remove Sub-status</option>
</select><br>
<div id="showhide" style="display: none;">
<input type="text" style="width: 120px; margin-left: 40px;" name="newSubStatusExtra" value="" placeholder="Enter amount">
</div>
效果很好。现在我正在重做这个页面,以便可以使用 Jeditable 编辑表中的数据,它可以完美地处理这个例外,因为我无法让它以任何可能的方式显示隐藏的 div。我当前的代码看起来像这样 - 在头脑中:
jQuery(function ($) {
$('#newSubStatus').change(function () {
$('#showhide').toggle(this.value == 'Option B');
}).change(); // To set the initial state
})
$(function() {
$(".edselect_subStatus").editable("./update.php?x=jiwjOijoJoihYfytfjhhiuh", {
data : '{"Option A":"Option A","Option B":"Option B","Option C":"Option C","Option D":"Option D","Option E":"Option E","REMOVE":"Remove Sub-status"}',
callback : function() {
location.reload();
},
type : 'select',
event : 'dblclick',
placeholder : '',
onblur : 'ignore',
indicator : 'Saving...',
cssclass : 'editable',
submit : 'Save',
cancel : 'Cancel',
});
});
在体内:
<tr>
<td>Status:</td>
<td class="edselect_status" id="status"><?=$status?></td>
<td style="padding-left: 10px;">Sub-status:</td>
<td class="edselect_subStatus" id="subStatus"><?=$subStatus?>
<div id="showhide" style="display: none;"><br>
<input type="text" style="width: 120px; margin-left: 40px;" name="newSubStatusExtra" value="" placeholder="Enter amount">
</div></td>
</tr>
我知道没有任何东西可以将#newSubStatus 连接到选择来触发它。我尝试了将它连接到它所在的td id 的方法,但没有成功。我找到了许多其他方法来显示文本字段,但它们都依赖于来自原始select 的 id 元素。有没有办法使这项工作发挥作用,还是 JavaScript 不匹配太多而无法一起运行?
【问题讨论】:
-
Jeditable 的 HTML 输出是什么?它创造了什么?
-
它使用
data行中列出的选项创建一个select。它似乎没有产生一个select,我可以在上面放置一个id。我什至通过调整 jquery.jeditable.mini.js 文件来尝试过这个。 -
显然输入
newSubStatusExtra的值实际上需要以某种实用的方式与select数据一起发布,否则它无法正常工作。 -
如果这是一个要求,它需要成为问题的一部分。如果您实际上没有告诉他们您的全部要求,那么很难责怪回答者不包括它。我们无法读懂你的想法。
标签: javascript jquery