说我有下面的代码,当有人单击汽车名称时,我想激活我的按钮,但是我不想写每个汽车名称。我想使用属性“ ^ =“,当有人选择汽车制造商法拉利,菲亚特或福特时,允许我激活按钮。在CSS中,它们存在属性“ ^ =” witch,我可以使用它来定义名称的前几个字符-在我的示例中,“ f”用于具有第一个字符的汽车。当我在jquery代码中写入此属性时,代码将无法正常工作。有人可以在下面的代码中定义CSS属性“ ^ =”吗?
我试图用代码[value ^ =“ f”]编写代码,但这没用。
html
<select class="cars">
<option value="none" selected></option>
<option value="ferrari">Ferrari</option>
<option value="fiat">Fiat</option>
<option value="ford">Ford</option>
</select>
<button class="SubmitButton" type="button" >Click Me!</button>
css
.SubmitButton {width:150px;}
.ButtonColor1 {color:red;}
:disabled {
border:3px solid lightgray;
color:gray;
}
button {
border:3px solid green;
color:black;
}
button:hover:disabled {
cursor:not-allowed;
}
button:hover {
cursor:pointer;
}
jquery
$(document).ready(function() {
if($("select.cars").val() == "none"){
$(".SubmitButton").attr("disabled", "disabled");
}
$("select.cars").change(function(){
if($(this).val() == [value^="f"]){
$(".SubmitButton").removeAttr("disabled");
$(".SubmitButton").addClass("ButtonColor1");
}
else if($("select.cars").val() == "none"){
$(".SubmitButton").attr("disabled", "disabled");
}
});
});
答案 0 :(得分:1)
您需要使用jQuery,因为CSS无法获取要应用的选项文本。
if($("select.cars :selected").text().indexOf("F") === 0){
$(".SubmitButton").removeAttr("disabled");
$(".SubmitButton").addClass("ButtonColor1");
}
$(document).ready(function() {
if($("select.cars").val() == "none"){
$(".SubmitButton").attr("disabled", "disabled");
}
$("select.cars").change(function(){
if($("select.cars :selected").text().indexOf("F") === 0){
$(".SubmitButton").removeAttr("disabled");
$(".SubmitButton").addClass("ButtonColor1");
}
else if($("select.cars").val() == "none"){
$(".SubmitButton").attr("disabled", "disabled");
}
});
});
.SubmitButton {width:150px;}
.ButtonColor1 {color:red;}
:disabled {
border:3px solid lightgray;
color:gray;
}
button {
border:3px solid green;
color:black;
}
button:hover:disabled {
cursor:not-allowed;
}
button:hover {
cursor:pointer;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select class="cars">
<option value="none" selected></option>
<option value="ferrari">Ferrari</option>
<option value="fiat">Fiat</option>
<option value="ford">Ford</option>
</select>
<button class="SubmitButton" type="button" >Click Me!</button>
答案 1 :(得分:0)
您可以使用AttributeError Traceback (most recent call last)
<ipython-input-6-5606e23c7cf8> in <module>()
33 emsg = traceback.format_exc()
34 logMessage("ERROR - Unable to send email because of :"+emsg)
---> 35 success_mail()
<ipython-input-6-5606e23c7cf8> in success_mail()
22 msg.attach(MIMEText("Scoring completed. Attached is the latest report"))
23 f=sc.textFile("/user/userid/folder/report_20190501.csv")
---> 24 part = MIMEApplication("".join(f.collect()).encode('utf-8', 'ignore'), Name=basename(f))
25 part['Content-Disposition'] = 'attachment; filename="%s"' % basename(f)
26 msg.attach(part)
/hadoop/ipython/userid/pyspark/lib64/python2.7/posixpath.pyc in basename(p)
112 def basename(p):
113 """Returns the final component of a pathname"""
--> 114 i = p.rfind('/') + 1
115 return p[i:]
116
AttributeError: 'RDD' object has no attribute 'rfind'
。
startsWith
$(document).ready(function() {
if($("select.cars").val() == "none"){
$(".SubmitButton").attr("disabled", "disabled");
}
$("select.cars").change(function(){
if($(this).val().startsWith("f")){
$(".SubmitButton").removeAttr("disabled");
$(".SubmitButton").addClass("ButtonColor1");
}
else {
$(".SubmitButton").attr("disabled", "disabled");
}
});
});