编辑jQuery-Mobile的<select>行为

时间:2016-03-03 13:54:08

标签: javascript jquery jquery-mobile onchange stoppropagation

我有一个jQuery Mobile / Cordova应用程序,我想&#34;样式化&#34;选择将其显示为此图像 TL; DR 我知道jQuery转换了&lt; select&gt;在&lt; div&gt;中包含&lt; span&gt;它采用所选&lt;选项&gt;的文本,因此这是你在&lt; html&gt;中写的: &lt; select name =&#34; date_set&#34;形式=&#34; SBA-形式&#34; ID =&#34; SBA-dateSet&#34;&GT;     &lt;选项已禁用所选值=&#34; null&#34;&gt; Seleziona la Data&lt; / option&gt;     &lt;选项选择值=&#34; 2-3-2016-3&#34;&gt; Mer 2 Marzo,2016&lt; / option&gt;     &lt;选择选项值=&#34; 3-3-2016-4&#34;&gt; Gio 3 Marzo,2016&lt; / option&gt;     &lt;选项选择值=&#34; 4-3-2016-5&#34;&gt; Ven 4 Marzo,2016&lt; / option&gt; &LT; /选择&GT; 这是jQuery转换后的结果: &lt; div class =&#34; ui-select&#34;&gt;     &lt; div id =&#34; sba-dateSet-button&#34;类=&#34;各种-jQuery的UI类&#34;&GT;         &lt; span&gt; Mer 2 Marzo,2016&lt; / span&gt;         &lt; select name =&#34; date_set&#34;形式=&#34; SBA-形式&#34; ID =&#34; SBA-dateSet&#34;&GT;             &lt;选项已禁用所选值=&#34; null&#34;&gt; Seleziona la Data&lt; / option&gt;             &lt;选项选择值=&#34; 2-3-2016-3&#34;&gt; Mer 2 Marzo,2016&lt; / option&gt;             &lt;选择选项值=&#34; 3-3-2016-4&#34;&gt; Gio 3 Marzo,2016&lt; / option&gt;             &lt;选项选择值=&#34; 4-3-2016-5&#34;&gt; Ven 4 Marzo,2016&lt; / option&gt;         &LT; /选择&GT;     &LT; / DIV&GT; &LT; / DIV&GT; 脚本 我认为我可以编辑这种行为,将我的风格应用到&lt; span&gt;使用&lt; option&gt;的值并且它有效,在事件结束时显示警报,您可以看到&lt; span&gt;现在得到正确的值,这是我使用的: $(&#34;#sba-dateSet&#34;)。change(function(e){     var parent = $(this).parent()。attr(&#34; id&#34;);     var thisVal = $(this).val();     var spltVal = thisVal.split(&#34; - &#34;);     //天和月存储在相应的全局变量中     var selH =&#39;&#39 ;;     selH + =&#39;&lt; div class =&#34;样式选择日&#34;&gt;&#39; + spltVal [0] +&#39;&lt; / div&gt;&#39 ;;     selH + =&#39;&lt; div class =&#34; styledSelect rest&#34;&gt;&#39; +天[spltVal [3] - 1] +&#39;&lt; br /&gt;&#39; +月[spltVal [1] - 1] +&#39;,&#39; + spltVal [2] +&#39;&lt; / div&gt;&#39 ;;     $(&#34;#&#34; +父+ +#34; span&#34;)。html(selH);     警报(&#34;它有效!&#34;); }); 但是在警报上单击“确定”后(在我的自定义事件处理程序完成之后),jQuery会进入并使用其默认行为再次更改它。 这个问题 如何停止/阻止jQuery Mobile默认行为或其事件处理程序? 即使这不是非常默认的行为,我尝试了event.preventDefault(),event.stopPropagation()并在我的自定义事件处理程序结束时返回false,并且正如预期的那样,它们都没有工作 编辑:我说我的小提琴一切正常,&lt; span&gt;标签保持我想要的没有错误在控制台,所以我认为它可能是一个与cordova相关的问题,所以我尝试了我的服务器(小提琴的复制粘贴),不包括每个cordova注入...但问题仍然是那里

0 个答案:

没有答案