クリックまたは要素の変更時にモーダルをトリガーする jQuery プラグインを作成しました。
$.fn.showInformationOverlay = function(options){
var defaults = {
fragments: "myfrag",
ajaxSource: true,
_eventId: "myfragEvent",
formId: "#myform",
event: "click"
}
var params = $.extend({},defaults, options);
var $url = $(params.formId).attr("action");
var $this = $(this);
return $this.each(function(){
$this.on(params.event,function(e){
e.preventDefault();
$.ajax({
type: "POST",
url:$url,
data:params,
success: function(data){
if (!!data) {
//Do something with data
}
}
});
});
});
},
以下のようにパラメーターを渡してこのプラグインを呼び出しています。場合によっては、追加のパラメーターが渡されます。
$("#mydropdownElement").showInformationOverlay({
fragments: "myfragmentforthissection",
ajaxSource: true,
_eventId: "myfragmentforthissectionEvent",
includeChangedValue: true, //Additional Param
nameForChangedValue: "mychangedValueKey",//Additional Param
event: "change"
});
私の質問は
params
キーがnameForChangedValue
で、値が である にval()
オブジェクトを「プッシュ」するにはどうすればよいですか$("#mydropdownElement")
。
したがって、オブジェクトの期待される配列は次のようになります。
{
fragments: "myfragmentforthissection",
ajaxSource: true,
_eventId: "myfragmentforthissectionEvent",
formId: "#myform",
event: "change",
mychangedValueKey : "mydropdownvalue" //Key as the name I've passed in and the value is the value from the change event of the dropdown
}
質問が明確であることを願っています。よろしくお願いします。