我需要将样式和只读属性应用于drupal表单的输入元素.我编码如下:
$form['precio'] = array(
'#type' => 'textfield',
'#title' => t('Precio'),
'#default_value' => ''.$precio,
'#size' => 20,
'#required' => TRUE,
'#attributes' => array($inputAtributo => 1),
'#description' => t('Modifica el precio '),
);
Run Code Online (Sandbox Code Playgroud)
并在 '#attributes' => array($inputAtributo => 1),
在创建表单之前,我检查这个输入是否应该是readonly并应用一些样式:
if ($tarifa !='' & $tarifa=='N')
$inputAtributo=" readonly style=\"background: none repeat scroll 0 0 #EAEAEA;\" ";
else
$inputAtributo = "";
Run Code Online (Sandbox Code Playgroud)
这有效,但我认为它编码不正确
html代码显示以下内容:
<input id="edit-precio" class="form-text required" type="text" maxlength="128" size="20" value="258" name="precio" ="1"="" style="background: none repeat scroll 0 0 #EAEAEA;" readonly="">
Run Code Online (Sandbox Code Playgroud)
我怎么能做得更好?
在Android 4.2我的应用程序工作正常,但当我尝试使用Android 4.0.4测试它我有这个消息错误:
04-16 15:06:46.601: E/AndroidRuntime(3844): java.lang.NoSuchMethodError: android.widget.RelativeLayout.setBackground
04-16 15:06:46.601: E/AndroidRuntime(3844): at com.myapp.MainActivity.cambiarPagina(MainActivity.java:271)
04-16 15:06:46.601: E/AndroidRuntime(3844): at com.myapp.MainActivity.cambiarPagina(MainActivity.java:119)
04-16 15:06:46.601: E/AndroidRuntime(3844): at com.myapp.MainActivity.access$0(MainActivity.java:116)
04-16 15:06:46.601: E/AndroidRuntime(3844): at com.myapp.MainActivity$2.onClick(MainActivity.java:70)
04-16 15:06:46.601: E/AndroidRuntime(3844): at android.view.View.performClick(View.java:3524)
04-16 15:06:46.601: E/AndroidRuntime(3844): at android.view.View$PerformClick.run(View.java:14202)
04-16 15:06:46.601: E/AndroidRuntime(3844): at android.os.Handler.handleCallback(Handler.java:605)
04-16 15:06:46.601: E/AndroidRuntime(3844): at android.os.Handler.dispatchMessage(Handler.java:92)
04-16 15:06:46.601: E/AndroidRuntime(3844): at android.os.Looper.loop(Looper.java:137)
04-16 15:06:46.601: E/AndroidRuntime(3844): at android.app.ActivityThread.main(ActivityThread.java:4499)
04-16 15:06:46.601: E/AndroidRuntime(3844): at java.lang.reflect.Method.invokeNative(Native Method)
04-16 15:06:46.601: E/AndroidRuntime(3844): at java.lang.reflect.Method.invoke(Method.java:511)
04-16 15:06:46.601: E/AndroidRuntime(3844): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:788)
04-16 15:06:46.601: E/AndroidRuntime(3844): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:555)
04-16 …Run Code Online (Sandbox Code Playgroud)