通过单击按钮按类名称更新所有选择列表
我正在使用 jQuery 和 Coldfusion。
设想: 我有一个车辆数据库和一个用于更新每辆车位置的表格。假设我有 10 辆车要去同一地点。我希望能够从下拉项中选择一个位置,然后单击另一个按钮将该所选值复制到其他 9 辆车。
我无法让它在我的主窗体中工作,因此我创建了下面的代码来尝试一些事情。我能够从与单击的按钮相对应的选择中获取唯一 ID 和值,但无法按写入方式获取其他选择列表值进行更新。有人可以帮忙吗?
<form>
<select name="thisone" class="replicated" id="SystemType_10">
<cfoutput>
<cfloop index="x" from="1" to="10">
<option value="Item #x#">Item #x#</option>
</cfloop>
</cfoutput>
</select><img src="../iPhone/assets/images/whiteButton.png" width="29" height="46" border="0" align="absmiddle" class="vtip replicate" id="replicate_10" title="Copy this value down the list.">
<br>
<select name="thistwo" class="replicated" id="SystemType_500">
<cfoutput>
<cfloop index="y" from="1" to="10">
<option value="Item #y#">Item #y#</option>
</cfloop>
</cfoutput>
</select> <img src="../iPhone/assets/images/whiteButton.png" width="29" height="46" border="0" align="absmiddle" class="vtip replicate" id="replicate_500" title="Copy this value down the list." />
<br>
<select name="thisthree" class="replicated" id="SystemType_84">
<cfoutput>
<cfloop index="z" from="1" to="10">
<option value="Item #z#">Item #z#</option>
</cfloop>
</cfoutput>
</select> <img src="../iPhone/assets/images/whiteButton.png" width="29" height="46" border="0" align="absmiddle" class="vtip replicate" id="replicate_84" title="Copy this value down the list." />
</form>
jQuery(document).ready(function() { //start of jQuery
$('.replicate').click(function() {
var CopybtnClicked = $(this).attr("id").split(""); // figure out which copy button was clicked and then get the ID number from it
var sysID = CopybtnClicked[1]; // the value from using split are put into arrays starting with 0,1,2,3,etc. In this case
// the value we need is the second so that is the ID we are looking for;
var OriginalValue = $('#SystemType' + sysID).val(); // define the variable and then get the value from it;
alert(OriginalValue);
$("select option:contains('SystemType_')").val(OriginalValue);
alert('done ' + OriginalValue);
});
}) //end of jQuery
I'm using jQuery and coldfusion.
Scenario:
I have a database of vehicles and a form to update the location of each vehicle. Let's say I have 10 vehicles that are going to the same location. I'd like to be able to select a location from the drop down item and then click another button to copy that selected value to the other 9 vehicles.
I wasn't able to get it to work in my main form so I created the code below to try out some things. I'm able to get the unique ID and the value from the select corresponding to the button clicked but I cannot get the other select lists values to udpate as written. Can anyone help?
<form>
<select name="thisone" class="replicated" id="SystemType_10">
<cfoutput>
<cfloop index="x" from="1" to="10">
<option value="Item #x#">Item #x#</option>
</cfloop>
</cfoutput>
</select><img src="../iPhone/assets/images/whiteButton.png" width="29" height="46" border="0" align="absmiddle" class="vtip replicate" id="replicate_10" title="Copy this value down the list.">
<br>
<select name="thistwo" class="replicated" id="SystemType_500">
<cfoutput>
<cfloop index="y" from="1" to="10">
<option value="Item #y#">Item #y#</option>
</cfloop>
</cfoutput>
</select> <img src="../iPhone/assets/images/whiteButton.png" width="29" height="46" border="0" align="absmiddle" class="vtip replicate" id="replicate_500" title="Copy this value down the list." />
<br>
<select name="thisthree" class="replicated" id="SystemType_84">
<cfoutput>
<cfloop index="z" from="1" to="10">
<option value="Item #z#">Item #z#</option>
</cfloop>
</cfoutput>
</select> <img src="../iPhone/assets/images/whiteButton.png" width="29" height="46" border="0" align="absmiddle" class="vtip replicate" id="replicate_84" title="Copy this value down the list." />
</form>
jQuery(document).ready(function() { //start of jQuery
$('.replicate').click(function() {
var CopybtnClicked = $(this).attr("id").split(""); // figure out which copy button was clicked and then get the ID number from it
var sysID = CopybtnClicked[1]; // the value from using split are put into arrays starting with 0,1,2,3,etc. In this case
// the value we need is the second so that is the ID we are looking for;
var OriginalValue = $('#SystemType' + sysID).val(); // define the variable and then get the value from it;
alert(OriginalValue);
$("select option:contains('SystemType_')").val(OriginalValue);
alert('done ' + OriginalValue);
});
}) //end of jQuery
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您已经很接近了,只需要纠正获取
sysID
和 CSS 选择器语法的错误即可找到页面上的其他选择框。jQuery (我的更改遵循使用 /* 代码 */ 注释掉的行)
HTML (对于请求它的评论者)
You were close, just needed to correct error with getting the
sysID
and the CSS selector syntax to find the other select boxes on the page.jQuery (my changes follow lines commented out using /* code */)
HTML (for commenter who requested it)