以下jQuery 1.9和1.10+之间的行为有所不同:
<select id="s1">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
$('#s1 option[value=1]').hide();
$('#s1').val('');
Run Code Online (Sandbox Code Playgroud)
这段代码背后的想法是选择第一个选项.
在1.10之后,$('#s1').val('');零件不再以相同的方式工作.我认为它从来没有意味着以这种方式使用,但它的旧代码必须以某种方式进行现代化......
在jQuery 1.10之后没有选择并$('#s1').val()返回null.
将代码更改为:
$('#s1 option[value=1]').hide();
$('#s1').val($('#s1 option').first().val());
Run Code Online (Sandbox Code Playgroud)
是否有新的和旧的jQuery版本的工作.
我的问题是,是否有更短/更优雅的方式来做同样的事情?
我有一个用JQuery 1.4制作的例子
这是html:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Formularseite</title>
<link href="style3.css" rel="stylesheet" type="text/css" media="all" />
<script type="text/javascript" src="js/jquery-1.7.js" ></script>
<script type="text/javascript" src="js/meineScripts.js" ></script>
</head>
<body>
<?php
if (isset($_POST['senden']))
{
}
else { ?>
<form action="formular.php" method="POST" enctype="Multipart/Formdata">
<fieldset>
<legend>Demo1 JQuery</legend>
<label for="auswahl1">Auswahl treffen:</label>
<input class="grouptrigger" type="checkbox" id="auswahl1" name="daten[0]" value="true"/>
<br/>
<div class="auswahl1 hide_on_start">
<label for="eineZeile">Text:</label>
<input type="text" id="eineZeile" name="daten[1]" value=""/>
</div>
<input class="grouptrigger" type="radio" id="auswahl2a" name="daten[2]" value="1" />
<label for="auswahl2a">Option 1</label>
<input class="grouptrigger" type="radio" id="auswahl2b" name="daten[2]" …Run Code Online (Sandbox Code Playgroud)