我在這裏的第一個問題...我已經搜索了其他Q & A,但找不到我正在尋找的點。在jquery函數參數中使用'this'
我是jquery begginer,所以,當然,這使我更難以適應我的問題的解決方案。
所以...我有以下代碼:
(function($){
$('select[data-select="cidades-distinct"]').ajaxSelect('http://www.myurl.asp', #destination);
})(jQuery);
我用它來填補,阿賈克斯,形式與城市名稱選擇,基於該國的狀況選擇。所以...要知道哪個是保存狀態選項的select,我使用數據屬性data-select。城市列表以#destination ID返回。 HTML代碼是:
<select data-select="cidades-distinct" id="myid" name="myname">
它完美地工作。但是...如果我想使用多個州/城市列表,我不能使用此函數,因爲它將列表返回到相同的ID#目標。
所以,我想要做的就是通過數據屬性,如data-destination =「#destination」,從窗體中傳遞我的id目標名稱。所以,我的HTML代碼如下:
<select data-select="cidades-distinct" data-destination="#cidade" id="myid" name="myname">
但我不能這樣做!我嘗試了下面的代碼以及一些變體,但是有一些錯誤!
(function($){
$('select[data-select="cidades-distinct"]').ajaxSelect('http://www.myurl.asp', $(this).attr("data-destination"));
})(jQuery);
你能幫我嗎?
編輯:添加ajaxSelect功能 這是ajaxSelect:
jQuery.noConflict();
(function($){
$.fn.extend({
ajaxSelect: function(url, destino){
return this.change(function(){
var t = $(this),
valor = t.val();
$.ajax({
'url': url,
'data': {'valor': valor, 'action':'ajaxSelect'},
'type': 'GET',
'success': function(response){
$(destino).html(response)
$(destino).trigger("chosen:updated");
},
'error': function (error){
console.log(error);
loading.hide();
alert('Error!');
}
});
});
}
});
})(jQuery的);
你正在屬性'數據 - (this).attr(「data-destino」)'.Correct'$(this).attr(「data-destination」)'或$(this).data(「destination」) ' –
對不起......我只是把它複製錯了......我改變了變量名稱,以便於解釋。已經編輯它。 – mEba
你使用的是什麼'ajaxSelect'插件?請鏈接其文檔。 – Bergi