大家好,我对Jquery有一个问题:
我有多个选择,用户可以选择一件事,它会将文本复制到上面的输入中。我希望如果点击按钮,将被复制的多个选择中的文本变为红色,所以你明白了吗?我不知道如何在Jquery中做条件,这就是我所做的:
$(document).ready(function(){
if ($choose = true)
{
$("ok").click(function(){
$("droite").css({"background-color":"yellow"});
}
});
});
droite
是一个id,不是它没有用,但我想知道它是如何工作的
选择是一个函数,它是:
var choose = function(bouton){
var lesoptions = $('#droite').find(":selected");
//lesoptions.remove();
$('#numLot').val(lesoptions[0].text);
};
我可以提出您的意见吗?
感谢
答案 0 :(得分:1)
您必须在类名前使用.
选择器,在ID名称前使用#
。
了解选择器: jQuery Selectors
由于choose
是一个函数,你必须返回一些内容并检查它是否返回true / false。所以让你的功能像这样:
function choose(bouton){
var something = /*your return value*/; //Put your return value here
var lesoptions = $('#droite').find(":selected");
$('#numLot').val(lesoptions[0].text);
return something; //something is what you want to be returned by function
};
如果在您将其置于条件状态时未定义$choose
,那么您将无法正常工作。
如果动态添加#ok
,请使用delegation
使用.on
。
你应该输入这样的代码:
$(document).ready(function(){
var $choose = choose(bouton);
if ($choose)
{
$("#ok").on("click",function(){ //Again not mentioned what is ok, still like you told I assume it id
$("#droite").css("background-color","yellow");
});
}
});
答案 1 :(得分:1)
$(" ok")错了。它应该是$("#ok")或$(" .ok")或其他什么。
比较运算符是==而不是
答案 2 :(得分:1)
尝试使用如下,
var $Choose;
//Assign value to $Choose as like true or false
$(document).ready(function(){
if ($choose)
{
//If you have id like ok use "#" or if class use "." instead
$("#ok").click(function(){
$("#droite").css({"background-color":"yellow"});
});
}
});
希望这会有所帮助......