我正在尝试使用jQuery cookie来设置语言。 我有以下表格:
<select id="lang">
<option value="en_US">English</option>
<option value="it_IT">Italiano</option>
<option value="fr_FR">Français</option>
</select>
<input id="btn" type="button" value="submit">
<noscript><input id="btn" type="button" value="submit"></noscript>
在以下脚本中:
// Set cookie
$(document).ready(function () {
$("#btn").on("click", function () {
$.cookie('lang_cookie', $("#lang").val(), { expires: 365 });
});
});
上面的表单效果很好,但我想删除该按钮并自动提交。
我可以使用onchange="this.form.submit()"
更改表单:
<select id="lang" onchange="this.form.submit()">
<option value="en_US">English</option>
<option value="it_IT">Italian</option>
</select>
但是jQuery部分呢?如何在不使用$("#btn").on("click", function (){})
的情况下设置Cookie?
答案 0 :(得分:1)
您可以直接使用onchange事件而无需提交如下表单,
<select id="lang" onchange="set()">
<option value="en_US">English</option>
<option value="it_IT">Italian</option>
</select>
现在您可以将脚本编写为
function set(){
$.cookie('lang_cookie', $("#lang").val(), { expires: 365 });
}
答案 1 :(得分:1)
你的HTML
execute
您的脚本
<select id="lang" onchange="return setC(this);">
<option value="en_US">English</option>
<option value="it_IT">Italiano</option>
<option value="fr_FR">Français</option>
</select>
答案 2 :(得分:0)
您可以设置Cookie,然后提交表单:
// Set cookie then submit
$(document).ready(function () {
$("#btn").on("click", function() {
$.cookie('lang_cookie', $("#lang").val(), { expires: 365 });
$("#btn").closest('form').submit();
});
});
使用jQuery .submit()。
答案 3 :(得分:0)
// Set cookie
$(document).ready(function () {
$("THE ID OF YOUR FORM").submit(function () {
$.cookie('lang_cookie', $("#lang").val(), { expires: 365 });
});
});