我有一个select2下拉列表,如下所示:
$(function () {
$("#itemSelect").select2().on("select2:select", function (e) {
$("#itemSelect").val(-1).trigger("change");
var id = e.params.data.title;
var url = siteRoot + "/site/item?itemID=" + id ;
$("#Container").load(url);
});
});
Run Code Online (Sandbox Code Playgroud)
它从我的模型中获取它的值:
<select class="js-data-example-ajax" aria-expanded="true" style="width: 100%; display: none;" id="itemSelect">
<option disabled selected value="-1"> Search by item </option>
@foreach (var item in Model)
{
<option text="@item.Id" title="@item.Id">
item.Name
</option>
}
Run Code Online (Sandbox Code Playgroud)
一切正常,除了当我选择一个项目并且已经加载时,我可以将鼠标悬停在下拉列表上,它会显示项目中的ID.我不想出示身份证!
在图片中,您可以看到当我将鼠标悬停在"冰茶"上时显示的下拉列表和项目编号
我知道这是因为select2得到了id var id = e.params.data.title;,但我怎么能改变这个呢?它不合作 var id = e.params.data.id;
我尝试使用工具提示,但我是新手.
//$("#select2-itemSelect-container").tooltip({
// title: "Search item",
// placement: "auto"
//});
Run Code Online (Sandbox Code Playgroud)
我只是想在鼠标悬停时删除下拉列表中的ID.感谢每一位帮助.
我无法让clipboard.js工作; 我认为这是一个简单的"误解",关于整个事情是如何运作的,因为我甚至无法得到最简单的例子,就像在这个小提琴中一样 ......
我的具体问题是让这个工作:
HTML:
<button class="copyButton"
id="copyButtonId"
data-id="@item.Type"
data-clipboard-action="copy"
data-clipboard-target="#copy_@item.Type">
</button>
Run Code Online (Sandbox Code Playgroud)
应该复制的div是这样的:
<div id="copy_@item.Type">
@item.Type
Name...: @item.Name
Address: @item.Address
</div>`
Run Code Online (Sandbox Code Playgroud)
JS是:
$(function() {
$(document).on("click", ".copyButton", function() {
var clipboard = new Clipboard(".copyButton");
clipboard.destroy();
});
});
Run Code Online (Sandbox Code Playgroud)
我正在进入这个功能,但什么也没发生.我试过了:
clipboard.copy();
Run Code Online (Sandbox Code Playgroud)
但这只是让我异常......
我可以得到我要复制的文字
var id= "copy_" + $(this).attr("data-id");
var source = ($("#" + agent).html());
但我应该只能通过使用来解决这个问题clipboard.js.
我无法得到任何例子,所以如果有人给我一个完整的例子,我会很高兴.我真的试图理解,我可能会过度思考整个事情并使其变得更加复杂.我不想要任何变通方法,因为我之前使用过,认为这是一个很棒的js解决方案...如果我能理解它:)
每一个正确方向的提示都值得赞赏!