2015-12-10 52 views
0

所以,我試圖用jquery更改一個選項的文本。
用jquery在`select`中更改'option`的文本

HTML

<select id="mySelect"> 
    <option value="change me">Change me</option> 
</select> 

JS

$(document).ready(function() { 
    $('#mySelect').select2(); 
$(document).find('option[value="change me"]').text('Changed'); 
}) 

嘛,沒什麼happends。
改變文本「live」很重要。
小提琴:https://jsfiddle.net/gmt22ffL/2/

這甚至有可能嗎?
我爲我的選擇使用Jquery插件「Select2」。

+1

其實它的工作原理:**的https://jsfiddle.net/gmt22ffL/3/**你讓裝載選擇二後,我們來看看。 –

回答

1

它的工作原理perfectly fine。但是,讓我們嘗試將選擇二看:

$(document).ready(function() { 
 
    $('option[value="change me"]').text('Changed'); 
 
    $('#mySelect').select2(); 
 
});
<script src="https://code.jquery.com/jquery-1.11.3.js"></script> 
 
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.1/css/select2.min.css" /> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.1/js/select2.full.min.js"></script> 
 
<select id="mySelect"> 
 
    <option value="change me">Change me</option> 
 
</select>

交換行工作。

破壞和改變:

$(document).ready(function() { 
 
    $('#mySelect').select2(); 
 
    $('#mySelect').select2("destroy"); 
 
    $('option[value="change me"]').text('Changed'); 
 
    $('#mySelect').select2(); 
 
});
<script src="https://code.jquery.com/jquery-1.11.3.js"></script> 
 
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.1/css/select2.min.css" /> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.1/js/select2.full.min.js"></script> 
 
<select id="mySelect"> 
 
    <option value="change me">Change me</option> 
 
</select>

+1

哦,很容易修復。我喜歡那=)謝謝! –

+0

corse,即時通訊正在等待它...我有一個新問題。在我實際的代碼中,我在代碼運行之前加載了select2方法。有沒有去設置Select2,然後再次添加它,以便我可以運行此代碼。它接縫像Select2不喜歡「文本更改」代碼?! –

+1

@Mjukis Lemme嘗試兩種。加載和更改,也會破壞,更改和加載。 –